DecentCMS aims at being a decent CMS written in Node. Its design principles are inherited from Drupal and Orchard CMS.
The current state of DecentCMS is: naked.
The system can handle very simple sites, in a runtime-only fashion. There is no dashboard yet.
All code is subject to change and refactoring.
The following features are implemented:
- Module system, with scoped dependency injection and automatic detection and loading of services.
- Themes
- Multi-tenancy
- Navigation menus
- Content type system
- Widgets
- Express compatibility
- File-based content store
- Markdown
- Template overloading
- Code-based asynchronous view engine
- Dust-based asynchronous view engine
- Localization base infrastructure
- Tokens
- Logging (using Winston)
Future features include:
- Document database as the content store
- Documentation site
- Localization implementation
- Dashboard
- Authentication
- Installer
The road map is determined by me, based on what I think are the most urgent features, on what my customers ask me to build, and on user and contributor feedback.
Near future milestones are:
- First publicly accessible web site running DecentCMS
- Authentication and basic dashboard infrastructure
- Documentation and community site running DecentCMS
There is an experimental installation procedure for the moment:
- Install Node.js
- npm install -g grunt-cli
- Clone the repository
- From the root of the clone, npm install
- From the root of the clone, grunt install
- Create a web site or clone an existing one under sites/default (for example from this sample site).
You can then run the server: node server, and navigate to localhost:1337.
Otherwise, you can manually install by cloning the repository,
adding a sites/default folder (for example from
this sample site), and then npm install
from the root and from every single module and theme folder.
Yes, please.