SonicJS is a Modern Open Source NodeJs Based Content Management System
Manage Content Types | Drag and Drop Form Builder | Edit Content with Automagically Generated Forms |
Build Advanced Forms with over 20 Field Types | Edit Content Properties From the Front End | Front End WYSIWYG Editor |
Menu Manager | Real Time CSS Editor | Built In Media Server |
Module Management | Front End Json Editor | |
There are thousands of CMS out there and several already built on the modern JAM stack (JavaScript, API & Markup). I was looking for a solid Node.js based CMS suitable as a foundation for enterprise application development. It didn’t exist. For a detailed description of why SonicJs was started, please see the about page.
You will need NodeJs installed. VS Code IDE is recommended, but any IDE that support Javascript development will work.
Setup takes < 2 minutes.
Follow these steps and you should be good to go:
git clone https://github.com/lane711/sonicjs.git
cd sonicjs
npm install
npm start
Note: you can also start the app with npm run dev
to run with Nodemon change detection enabled.
You should see the following message in your console:
From the home page, click on the “Sign Up” link to create your initial admin account.
SonicJs is similar to Drupal CMS in that it is highly configurable. You can build your own content types using a drag and drop style form editor. All basic CRUD operations are generated on the fly by the framework. Unlike other NodeJs CMS’, such as KeystoneJs, SonicJs does not generate code (a good thing!). It has a very powerful runtime engine that is built with both performance and flexibility in mind.
SonicJs can handle most common website building use-cases with ease, but it also positioned to be an enterprise application framework/platform enabling developers to start custom web application projects with a solid foundation. This can help significantly reduce the overall effort required for your project.
SonicJs is also 100% GraphQL API based and therefore a great choice if you are looking for a Headless CMS for your mobile app or IoT project. All of the content types that you create in the admin interface are instantly exposed as GraphQL end points. There is no need to restart the application as required in other NodeJs based Headless CMS.
SonicJs is built with love from Orange County California.
If you are considering using SonicJs for your next web project, its important to know that it shall remain free forever (again similar to Drupal). Be wary of other “free” Node.js open source CMS solutions being built by start-ups or established companies that haven’t made this same “free forever” commitment.
If you are interested in reading more about me or the goals and motivation of the project, please check out the “about” page here: https://sonicjs.com/about.
Also, if you’ve actually read down this far and happen to be a in generous mood, ⭐⭐⭐⭐⭐ please consider giving this project a star to help us get the word out. ⭐⭐⭐⭐⭐ Thanks in advance!
Please see here for a full explanation: https://sonicjs.com/about, however here is a high level list of SonicJs’ guiding principals:
Please feel free to create an issue here in github or email me using the contact form here. I’ll make every attempt to get back to you quickly and help answers and questions you may have.
Interested in contributing to SonicJs? Any and all help is welcome! Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Deployment is basically the same as any regular Node.js/Express project. The project has successfully been deployed to Heroku, NodeChef, Amazon EC2 and others. I recommend using a process manager like PM2 or similar if you are deploying on a self managed server (like EC2).
We use SemVer for versioning. For the versions available, see the tags on this repository.
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE.md file for details
See here for several videos to get you up and running quickly. Overview and Demo Videos