shc

sails-hook-cms

Simple Sails Admin Panel (CMS)

Showing:

Popularity

Downloads/wk

1

GitHub Stars

11

Maintenance

Last Commit

4yrs ago

Contributors

2

Package

Dependencies

5

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

Sails admin panel

Join the chat at https://gitter.im/juanpasolano/sails-hook-cms

Beaware: This hook is still in a very early stage and is still in very active development.

Why

The objective of this sails hook is to provide an easy way to create a simple CMS for your model's collections.
The hook reads the models schema to build simple CRUD operations and UI CMS.

Installation

Install using npm i sails-hook-cms and then navigate to http://localhost:1337/admin

Routes

This hooks introduces a couple of routes to your application.

  • http://localhost:1337/admin or home
  • http://localhost:1337/admin/:model A list of items
  • http://localhost:1337/admin/:model/create The form to create a new item
  • http://localhost:1337/admin/:model/edit/:modelId The form to edit an item

Options

I want this hook to work as plug and play. However if you want more control over the CMS I want to be able to provide those configurations to set things up. I decided not to make a config/cms.js file yet since I think the model declaration could serve better for grain control configuraitons.

Having for example a model Book. We can start to modify how its /admin/:model list view renders. In this case we have overrided the model.name with a label Libro and removed the createdAt and updatedAt fields.

module.exports = {
  //Setting this variable will tell the gook how to render
  cms: {
    //You can override the model name with label
    label: "Libro", 
    
    //Sometimes you dont want to put your createdAt and updatedAt
    //so we toggle them in the list view
    createdAt:false, 
    updatedAt:false,
    id:true
  },
  attributes: {
    name: 'string',
    description: 'text',
    danum: 'integer',
    dafloat: 'float',
    dadate: 'date',
    dadatetime: 'datetime',
    dabool: 'boolean',
    darray: 'array',
    dajson: 'json'
  }
};

Intentions

I would like to have a minimal API but still have a decent flexibility.
Any suggestions are welcome on the issues page or in the gitter chat room.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial