Strapi est le CMS headless numéro un sur GitHub en nombre d’étoiles. Open source, avec Node.js sous le capot, un constructeur flexible de types de contenu et une API REST + GraphQL auto-générée. Lancé en 2015 par une équipe française, il est depuis devenu un écosystème de milliers de plugins et de centaines de milliers d’utilisateurs.
Site : strapi.io
Comment ça fonctionne
Contrairement à WordPress, où le contenu est étroitement lié au thème et au frontend, Strapi est une API pure. Vous créez des types de contenu dans l’interface d’administration (articles, produits, landing pages, tout ce que vous voulez), vous les remplissez via un éditeur visuel, et le frontend reçoit les données via REST ou GraphQL.
L’interface d’administration est en React, personnalisable. Vous pouvez ajouter des champs de tout type : texte, rich text, média, dates, relations (one-to-many, many-to-many), JSON, enum, mot de passe. Des composants pour les blocs répétables. Des zones dynamiques pour une composition flexible des pages.
Après la création d’un type de contenu, Strapi génère automatiquement l’API — contrôleurs, routes, modèle. Tout ce qui reste au développeur — écrire le frontend.
Plugins et écosystème
Le marketplace Strapi compte des centaines de plugins. Certains sont officiels : GraphQL, documentation (auto-générée selon les types de contenu), fournisseurs pour email et uploads. D’autres viennent de la communauté : SEO, sitemaps, Algolia, Cloudinary, commentaires, Webhook.
L’architecture des plugins est mature — vous pouvez écrire les vôtres pour tous les besoins. C’est particulièrement précieux pour les agences : vous installez le plugin SEO, le sitemap, connectez Cloudflare Images — tout est gratuit.
Auto-hébergé vs Cloud
Strapi peut être déployé n’importe où : VPS, Railway, Render, Heroku, Docker. Base de données — SQLite pour le développement, PostgreSQL ou MySQL pour la production. La version auto-hébergée est gratuite.
Strapi Cloud est l’hébergement managé par les créateurs : 99 $/mois par projet. Sauvegardes automatiques, CDN, CI/CD inclus. Pour les agences et les équipes qui ne veulent pas gérer les serveurs — une bonne option.
Nuance importante : Strapi v5 (la version actuelle) nécessite Node.js 20+ et utilise les modules ES. La documentation a été mise à jour, mais les anciens tutoriels pour la v4 sont parfois obsolètes.
Ce qui est bien
La flexibilité de modélisation du contenu — la fonctionnalité phare. Vous pouvez construire un schéma de toute complexité : d’un blog à une marketplace avec des entités interconnectées. L’API est générée automatiquement, filtrage, tri, pagination — inclus par défaut.
Le modèle de rôles (RBAC) permet de délimiter l’accès pour les éditeurs, auteurs et administrateurs. L’internationalisation (i18n) est intégrée — vous pouvez créer du contenu en plusieurs langues sans bricolage.
L’interface d’administration est agréable. Un Material Design propre, intuitif, rapide. Les éditeurs de contenu la maîtrisent en une heure.
Ce qui est moins bien
Strapi est un monolithe Node.js. Si le projet atteint des millions d’enregistrements, la base de données commence à peiner. La v5 contient des améliorations de performance, mais on est loin des solutions headless en Go (comme Payload CMS 3).
Les mises à jour de versions majeures — une douleur. La migration de la v3 à la v4 était une épreuve, de la v4 à la v5 — plus facile, mais les migrations nécessitent encore du travail manuel. Pour les projets à longue durée de vie, c’est un facteur à considérer.
Le support TypeScript s’est amélioré dans la v5, mais n’est pas profond partout. Certains plugins communautaires sont encore en pur JS sans typage.
Verdict
Strapi est un excellent choix pour 90 % des projets nécessitant un CMS headless. Gratuit, open source, flexible, avec une excellente interface d’administration et une communauté active. Idéal pour les blogs, landing pages, sites d’entreprise, petits e-commerces. Pour les scénarios à forte charge, regardez du côté de Ghost (si contenu uniquement) ou Payload.