Are you thinking of creating a content providing backend for your project?
🧑💻 : Yes!
Gonna do it for yourself from scratch?
🧑💻 : Yes. Planned to do so.
Before that let me suggest a guy, strapi.
Its a perfectly separated backend application developed from scratch for content delivery through REST APIs. Simply, it is a content repository that comes with an admin panel to add content and it can be displayed in frontend over RESTful APIs.
- Web and mobile applications can be served with your content.
- Build any website using your familiar technology.
- Use REST APIs to communicate with your content.
- Create your content with a pre-built user interface.
- Now, most of the CMS supports GraphQL queries which can be used to queries your data from Frontend applications such as React, Vue, Angular, etc.
- Open source and free forever.
- Easy to create, update, and manage content.
- Supports GraphQL.
- Select the database of your choice (SQLite, MySql, Postgres, MongoDB).
- Easy one-click deployment.
Sounds easy right?
🧑💻 : Yep! But how to do that?
Package manager of your choice. I am using yarn in this example.
yarn create strapi-app my-project --quickstart
Note: Here, --quickstart flag will create a strapi-app with SQLite database. You can skip the flag if you need to change a specific database.
While creating a project it will expose you to admin panel, else navigate to http://localhost:1337/admin
- Complete the form to create the first Administrator user.
- Click Ready to start.
That's it. You have created your own backend Node application in minutes.
Now, create your new collection/table in the Content-types builder tab,
with all your required columns/fields.
After creating content type with its required fields, the created one will be shown in the sidebar under collections, select and add your content as,
Navigate to Roles & Permissions -> Public, you can see your APIs created.
To view it in browser, make it public.
You can also add authentication to your APIs, allow public access, and so on.
Now we have created our headless CMS in just a few steps. You can simply use this REST API in your frontend mobile, web application using HTTP client or GraphQL queries.
Refer Strapi Official Documentation for more - https://strapi.io/documentation/v3.x/getting-started/introduction.html
🧑💻 : Will try that out and let you know how cool it is in the comment. Bye!