Visit https://sonicjs.com for Details, Videos & Docs
SonicJs is a 100% javascript based and completely REST API driven CMS built on the following tech stack:
- NodeJs
- Express
- Bootstrap 4
- MongoDB
- MySQL
- SQL Server
- Cloudant
- DashDB
- DB2
- Informix
- Oracle
- PostgreSQL
- Redis
- SQLite3
- Flat File (Json)
- In-Memory
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.
- Getting Started
- Quick Intro
- Free Forever
- Screen Shots
- Goals, Motivation & Principals
- Credits
- Sponsors
You just need NodeJs installed. No other setup is needed.
When you first setup SonicJs locally, the default database is set to use the Flat File (Json) database. This can be used throughout your development process and even in production for sites that are primarily read-heavy.
Follow these steps and you should be good to go:
- Clone the repo:
git clone https://github.com/lane711/sonicjs.git
- Install the dependencies:
npm install
- Run it:
npm start
You should see the following message in your console:
- Website at: http://localhost:3018
- Admin console at: http://localhost:3018/admin
- REST API at: http://localhost:3018/explorer
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% REST API based and therefor 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 REST end points. There is no need to restart the application as required in other NodeJs based Headless.
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 "free" open source 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, ⭐⭐⭐⭐⭐ would you mind given the project a star?⭐⭐⭐⭐⭐ Thanks in advance!
- From Visual Studio Code, make sure the standard debugger for Chrome extension is installed.
- Hit "Play"
Please see here: https://sonicjs.com/about
SonicJs uses a number of open source packages, tools, etc but there are a couple of them that I wanted to make special mention of:
- Loopback - An awesome NodeJs based ORM helping to support much of the heavy lifting in SonicJs' data tier.
- CoreUI - a truly great open source admin theme.
- Formio - a rock solid form builder with loads of advanced functionality.
- Axios - a brilliant library for interacting with REST end points.