About tortaCMS: Another Headless Content Management System

tortaCMS ๐ฐ is an open-source content management system built with Next.JS 13 app router. It was designed to give developers flexible tools with a powerful content management solution, where you can write your content with Markdown ๐ and use your favorite database with tortaCMS seamless support for MongoDB, MySQL and Postgres (and SQL Server yet to come)! With tortaCMS, you can focus on building what matter, because tortaCMS got your back(end)! ๐
Built on the foundation of Next.js 13 app router, tortaCMS ๐ฐ takes full advantage of the latest advancements in web development to ensure a smooth and performant user experience. By embracing Markdown as the content creation medium, we prioritize simplicity and accessibility, making content creation a breeze for both technical and non-technical users.
# Key Features: ๐๐๏ธ
- Markdown-based: tortaCMS simplifies writing rich and beautiful content by utilizing Markdown, a lightweight, intuitive and popular markup language. ๐๐จ๐ฐ
- Multiple Database Support: Enjoy the freedom to choose the database that suits your project requirements. Whether it's MySQL for relational data, PostgreSQL for advanced features, or MongoDB for flexibility, tortaCMS has you covered. ๐๏ธ๐ฝ๐
- JSON API: With the integration of tortaCMS's JSON API, tortaCMS ensures compatibility with any frontend framework of your choice. Whether it's ๐งถVue, ๐React, ๐ชSvelte, ๐ปAngular or any other framework, you can use tortaCMS to build a powerful user experience.๐๐
- Next.js 13 App Router Integration: tortaCMS was built on top of the Next.js 13 App Router, taking advantage of the enhanced routing capabilities offered by Next.js, enabling smooth navigation and improved performance. ๐จ๐โจ
# Also, check out some starter themes for your frontend!
We've got some starter themes for a ton of frameworks like Svelte, Nuxt, Next and many yet to come! Take a look at the list of starter themes already built:
- SvelteKit
- Next
- Nuxt
- Astro
# Quick Installation
# With MongoDB ๐
First, choose which database you want to run with tortaCMS, and run the following command accordingly:
npx create-next-app <name-of-your-app> -e https://github.com/FelBenini/torta-cms/tree/mongo
# With PostgreSQL ๐
npx create-next-app <name-of-your-app> -e https://github.com/FelBenini/torta-cms/tree/postgres
# With MySQL ๐ฌ
npx create-next-app <name-of-your-app> -e https://github.com/FelBenini/torta-cms/tree/mysql
After that, setup your env variables, it should look something like this:
CONNECTION_STRING='postgresql://<user>:<password>@localhost:5432/mydb?schema=public'
NEXTAUTH_SECRET='aS0rafoafohiasiofhaigfhqaie31209asdasfdhioafnkamadlsfaoiujoafisd'
NEXTAUTH_URL='http://localhost:3000'
- CONNECTION_STRING: The connection string to your database
- NEXAUTH_SECRET: A Secret that will be used to secure your jwt for tortaCMS's authentication system.
- NEXTAUTH_URL: The URL where your application is running, if you are running localy, by default it's http://localhost:3000
Finally, run the following commands:
$ npm run build
$ npm start
To build and start running your application. If all went well, you will see your application running on localhost:3000.
For more information, see the complete installation guide.