/strapi

🚀 Open source Node.js Headless CMS to easily build customisable APIs

Primary LanguageJavaScriptMIT LicenseMIT

Strapi logo

API creation made simple, secure and fast.

The most advanced open-source Headless-CMS to build powerful APIs with no effort.


NPM Version Monthly download on NPM Travis Build Status Strapi on Slack



Strapi is a free and open-source Headless CMS delivering your content anywhere you need.

  • Keep control over your data. With Strapi, you know where your data is stored and you keep full control at any time.
  • Self hosted. You can host and scale Strapi projects the way you want. You can choose any hosting platform you want: AWS, Netlify, Heroku, a VPS or a dedicated server. You can scale as you grow, 100% independently.
  • Database agnostic. You can choose the database you prefer. Strapi works with SQL & NoSQL databases: MongoDB, PostgresQL, MySQL, MariaDB, SQLite.
  • Customisable. You can easily build your own logic by fully customising APIs, routes or plugins to perfectly fit your needs.

Getting Started

Read the Getting Started tutorial or follow the steps below:

🖐 Requirements

Supported operating systems:

  • Ubuntu 18.04/Debian 9.x
  • CentOS/RHEL 8
  • MacOS Mojave
  • Windows 10
  • Docker - Docker-Repo

(Please note that Strapi may work on other operating systems, but these are not tested nor officially supported at this time.)

Node:

  • NodeJS 10.x
  • NPM >= 6.x

(Please note that Node 11/12 are not supported, and the current Node LTS (v10) is the officially supported version.)

Database:

  • MongoDB >= 3.6
  • MySQL >= 5.6
  • MariaDB >= 10.1
  • PostgreSQL >= 10
  • SQLite >= 3

⏳ Installation

npm install strapi@beta -g

We recommend always using the latest version of Strapi to start your new projects.

This project is currently in Beta. Large breaking changes are unlikely at this stage of the project, but using the latest version of Strapi ensures you have all the latest features and updates. New releases are usually shipped every two weeks to fix/enhance the project.

🏗 Create a new project

strapi new my-project

This command will generate a brand new project with the default features (authentication, permissions, content management, content type builder & file upload).

🚀 Start your project

cd my-project
strapi develop

Congratulations, you made it!

Enjoy 🎉

Features

  • Modern Admin Panel: Elegant, entirely customizable and a fully extensible admin panel.
  • Secure by default: Reusable policies, CSRF, CORS, P3P, Xframe, XSS, and more.
  • Plugins Oriented: Install auth system, content management, custom plugins, and more, in seconds.
  • Blazing Fast: Built on top of Node.js, Strapi delivers amazing performance.
  • Front-end Agnostic: Use any front-end framework (React, Vue, Angular, etc.), mobile apps or even IoT.
  • Powerful CLI: Scaffold projects and APIs on the fly.
  • SQL & NoSQL databases: Works with Mongo, Postgres, MySQL, MariaDB, SQLite.

See more on our website.

Try on Heroku

You can also give it a try using Heroku in one click!

Deploy

Be aware that the Content Type Builder won't work due to the restriction of writing files on the Heroku servers. If you would like to change/edit/add Content Types, you need to follow these steps:

  1. Click the button above and deploy your app
  2. Clone that repo by using heroku git:clone -a followed by your repo's name
  3. Go into the cloned projects' folder using cd followed by your repo's name
  4. Add the Heroku boilerplate as a remote by running git remote add boilerplate https://github.com/strapi/strapi-heroku-app
  5. Pull from this new origin by running git pull boilerplate master

Contributing

Please read our Contributing Guide before submitting a Pull Request to the project.

Support

For more information on the upcoming version, please take a look to our ROADMAP.

Community support

For general help using Strapi, please refer to the official Strapi documentation. For additional help, you can use one of these channels to ask question:

Migration

Follow our migration guides on the wiki to keep your projects up-to-date.

Roadmap

Check out our roadmap to get informed of the latest features released and the upcoming ones. You may also give us insights and vote for a specific feature.

Sponsors

Become a sponsor and get your logo on our README on GitHub with a link to your site.

License

MIT License Copyright (c) 2015-2019 Strapi Solutions.