/developer-cms

open-source headless CMS

Primary LanguageJavaScriptMIT LicenseMIT

Developer CMS

Clean and focused headless CMS for dynamic parts of your website

You can deploy the CMS on AWS, DigitalOcean, Microsoft Azure and so on, then interact with it via API



Developer CMS

⭐ Features

  • Publish or Draft your posts, page, portfolios and more as Contents
  • Clean data support (an object of content instead of raw HTML)
  • Receive message
  • Extra fields for additional information to include your API
  • Secure and Customizable

📍 Installation

First you need a free mongodb atlas database (Sign Up) . then you need to edit your config.json file in config directory

{
  "admin": {
    "username": "admindemo",
    "password": "admindemo"
  },
  "database": {
    "content": "mongodb+srv://USERNAME:PASSWORD@cluster0-xxx.mongodb.net/xxxxx?retryWrites=true&w=majority"
  },
  "jtw" : {
    "secretKey" : "YOURSECRET KEY",
    "expireToken" : 360000
  }
}

Now, we are ready to deploy developer-cms on node.js hosting

📒 Useage

Get all contents

yoursite.com/api/contents

Get a specific content

yoursite.com/api/contents/id

Send Message (Name - Email - Message should be post in JSON Format)

yoursite.com/api/messages

Get all Extra Fields

yoursite.com/api/extra-fields

Get a specific Extra Field

yoursite.com/api/extra-fields/id

Use clean data

the clean data is some like this and it generated by Quilljs Delta

"ops": [
        {
          "insert": {
            "image": "https://developer-cms.herokuapp.com/post2.jpg"
          }
        },
        {
          "insert": "\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit"
        },
        {
          "attributes": {
            "background": "#000000",
            "color": "#ffffff"
          },
          "insert": "Excepteur"
        }
      ]

To convert this object to html and display it on web pages, you can use modules such as quill-delta-to-html

🚀 Live demo

username: adminuser

password: adminpass

https://devcms.ir

🛠 Built with

Node.js . Express . MongoDB . JWT . React . Redux . Quill