Headless CMS, also called decoupled CMS, are content repository making content accessible via a RESTful or GraphQL API for display on any device. The idea is to have the data managed there, and be free to present them to any devices or services. The benefits are enormous: the back office manages the content and evolves independently of the front ends. Each front end can evolve at its speed. In the closed source world, Contenful was the first one to push this architecture.
In the open source world, there are 2 different types of Headless CMS:
- The big guys moving to a full headless approach:
- Drupal 8 is heading to a full headless architecture.
- WordPress (yes, WordPress!) is moving very fast in that direction. Using the GraphQL WordPress plugin, you can develop a React front end in a matter of days. You can also use a pure RESTful approach with the WP REST API included since WordPress 4.7. If you need to deliver fast, with many features, explore this not-so-know approach. You’ll be surprised.
- The new kids in town. Most of them are based on Node.js and are content API centric since day 1. Looking at the community and the maturity of the product, we recommend these 3 node.js headless CMS:
- Strapi.io: probably the most promising and the one we enjoy the most. Based on Node.js, with an active community, a push towards GraphQL, the right first features (internationalization, strong content types) and a strong comprehension by the dev team of the reason of WordPress success. A must test!
- KeystoneJS is another one, maybe more mature that Strapi, but with a more traditional RESTful approach and less extendable API.