Published on 04/24/25
What is Strapi?
Strapi is an open source, headless content management system (CMS) developed in JavaScript for Node.js. It enables developers to create custom APIs, while providing content teams with a user-friendly interface for managing information. Thanks to its flexibility and scalability, Strapi has become the solution of choice for many companies around the world.
The growing interest in headless CMS stems from the need for decentralized content management that can be easily consumed via APIs. Unlike traditional CMSs, which impose a monolithic structure, Strapi enables a clear separation between back-end and user interfaces, offering greater flexibility in the development of web and mobile applications.
History
2017
Recruiting the first employee
2018
Release of version 3 in alpha, bringing technical maturity to the project.
2019
The team has grown to 5 employees.
2020
Introduction of dynamic zones and components, facilitating content management.
2021
Release of the stable version, rebranding and launch of the Enterprise Edition. The team now numbers 40 and adopts a fully remote-first organization.
2022
Alpha release of version 4, with significant improvements
2023
TypeScript integration, addition of custom fields, audit logs and dark mode, as well as the launch of Strapi Cloud.
Created in 2015, Strapi has rapidly evolved to become a benchmark in the headless CMS ecosystem. Initially published as open source on GitHub, the project has seen notable growth.
Today, Strapi has 83 employees working all over the world, confirming its global ambition and adaptation to modern workflows.
Technical features
Strapi is based on a robust technological architecture designed to be modular, extensible and scalable. It is built on Koa.js, a minimalist, high-performance Node.js framework, and relies heavily on TypeScript, improving code maintainability and type management for developers. It can interface with the following databases:
- PostgreSQL
- MySQL
- mariaDB
- SQLite
The CMS can be deployed on-premises or on a variety of cloud infrastructures, enabling companies to choose the hosting mode best suited to their needs in terms of security and performance management.
How it works
Features
The open-source version includes features found in other CMS market players (headless or otherwise). These include
- A media library: storage, modification and retrieval of multimedia files, with support for a variety of formats.
- Internationalization (i18n): native support for multiple languages and localization configurations.
- Access control (RBAC ): granular management of roles and permissions, enabling secure content administration.
- API consumption via REST and GraphQL: offering maximum flexibility for content integration in different systems.
The Enterprise version of Strapi offers advanced functionalities:
- Single Sign-On (SSO): simplified authentication processes.
- Audit Logs: detailed tracking of administrative activities and content modifications.
- Review Workflows: improved validation and publication processes.
When should you use Strapi?
Advantages and disadvantages
Strapi stands out for its speed of implementation, its ability to generate APIs that can be used immediately, and its flexibility in content organization. It is particularly well suited to :
- Rapid MVP development requiring a robust headless architecture.
- R&D projects where a flexible API is essential for rapid experimentation and iteration.
- Companies looking to deploy multi-media platforms (web, mobile, IoT).
However, some advanced functionalities, such as SSO, are only available in the Enterprise version, which may be an obstacle for some companies looking for a complete solution at no extra cost.
Case studies at Arneo_
Knowledge base
At Arneo, we used Strapi to build an information exchange platform for medical professionals and an internal knowledge base. Based on these guidelines, we structured the content around 3 content entities:
- Company: structuring of companies and organizations collaborating on the platform.
- Disease: database of pathologies and associated repositories.
- Project: monitoring and documentation of ongoing medical initiatives.
The platform distinguishes between 2 types of user:
- Internal users (staff who manage the platform)
- Customer users (clients of the platform). The business complexity of the platform lay in the fact that we had to authorize customer users (who are attached to a Company) to access only certain projects. Strapi's RBAC functionality enabled us to implement this business requirement. On the other hand, Strapi's flexibility in creating custom fields enabled us to iterate rapidly on rich content additions (videos, documents, search papers) to enrich Project and Disease entities, at the customer's request.
Product catalog
We also used Strapi to build a product catalog for a well-known manufacturer of audio equipment. We had to integrate product sheets with a lot of fields and manage a lot of options on each of these product sheets. Strapi's content creation system enabled us to easily create all these fields. Strapi was particularly adept at composing dynamic zones, which enabled us to create flexible components tailored to the customer's needs.
The ease with which the fields could be created enabled us to quickly integrate customer requirements, so as to be reactive to requests. Strapi's agility is enhanced by the fact that implementations and corrections can be tested both internally and by the customer very quickly.
Conclusion
Today, Strapi is a must-have solution for companies and developers looking for a powerful, scalable and high-performance headless CMS. Its flexible architecture, robust API and extensive functionality make it a wise choice for a wide range of projects, from MVP to large-scale solutions.
Strapi is an essential building block in the headless movement, enabling integration with existing applications without high initial implementation costs.
Whether you're a start-up looking to quickly experiment with a business need, or an enterprise in need of a robust content management platform, Strapi offers a modern, agile alternative to traditional CMS. Its continuous evolution and growing adoption make it a key technology in the world of web development.
Further information: Installing Strapi 5 locally
Requirements
To get started, make sure you have :
- A version of Node LTS
- A Node package manager (npm or yarn)
- Python (if using a SQLite database)
Creating a new project
To create a new project in Strapi, simply issue this command in a terminal:
npx create-strapi@latest my-strapi-project
The tool will ask several questions to configure the project:
? Please log in or sign up. Skip
? Do you want to use the default database (squilte)? Yes
? Start with an example structure & data? Yes
? Start with Typescript? Yes
? Install dependencies with npm? Yes
? Initialize a git repository? Yes
For the simplicity of this tutorial, we'll choose a SQLite database, and we won't create an account for Strapi Cloud. The installation tool also offers a multitude of options, which are documented here.
After a few moments, the tool downloads and installs the dependencies required for the project. Once this step is complete, simply run in the terminal (if you're using npm) :
npm run develop
Now open your browser, go to http://localhost:1337, and you should see a form inviting you to create an account. Once your account has been created, you'll be taken to the Strapi interface, where you can start creating your API. A version of Node LTS A Node package manager (npm or yarn) Python (if using a SQLite database) npx create-strapi@latest my-strapi-project npm run develop
Further steps
We're now ready with our instance of Strapi 5. Now you can use a frontend framework (React, Vue, Svelte, etc.) or integrate your API into a mobile application to consume your API! Create a few entities, play with user rights and iterate as you make technical discoveries.
These articles may be of interest to you
Would you like to talk about it?
According to my analysis
Are you interested in our projects and our expertise? Why don’t we have a chat?
Your browsing inspires our AI to offer you tailor-made content.
For eco-design, let’s moderate its use.