Le blog

Découverte de Statamic, un Flat-file CMS

July 14th, 2023
thumb

Créé en 2012, puis totalement réécrit en utilisant le framework Laravel, Statamic est un CMS moderne sous license commerciale.

2 November 2016

À contre courant de la plupart des CMS que l’on retrouve habituellement (Wordpress, Drupal, Joomla, …), Statamic se caractérise notamment par l’absence de base de données (flat-file CMS). Tout contenu, structure de données et paramètre de configuration est enregistré dans des fichiers texte. Il est ainsi possible d’utiliser un système de contrôle de version tel que Git afin de garder un historique des modifications du site, travailler en équipe sans écraser le travail de collègues et mettre en place très simplement des environnements différents (développement, production) tout en évitant les éternels soucis de synchronisation des données. En terme de sécurité on évite tout piratage de base de données, notamment par le biais d’injections SQL.

Prise en main

Conçu pour être facile à utiliser d’un point de vue utilisateur, Statamic offre toutefois une bonne expérience de développement sans compromis. Il dispose d’une interface d’administration moderne utilisant Vue.js. On y retrouve toutes les fonctionnalités que doit offrir un CMS à savoir la gestion des utilisateurs, groupes et rôles, un explorateur de fichiers, un gestionnaire de pages et des extensions (thèmes, addons). Statamic intègre aussi nativement l’authentification OAuth via des services externes (Facebook, Twitter, Google, LinkedIn, GitHub et Bitbucket), la création de formulaire, le plurilinguisme et un puissant système de cache.

L’installation se veut simple, il suffit de télécharger le CMS puis d’uploader les fichiers sur le serveur. Un installeur s’occupera par la suite de la configuration du site. Ce dernier n’est théoriquement pas obligatoire car tout est configurable directement dans des fichiers textes, création d’utilisateurs compris.

head

Statamic est principalement destiné aux sites internet vitrine et blogs mais il est tout à fait possible de l’utiliser pour des sites plus complexes. L’extension Bison permet par exemple de le transformer en e-commerce avec toutes les fonctionnalités qu’on en attend (panier, paiement, méthodes de livraison, …).

Performances

Le temps de chargement des pages est très important. Beaucoup d’utilisateurs commencent à quitter un site après 4 secondes de chargement. Le système de cache (appelé Stash) intégré à Statamic permet de générer des pages statiques. Ce dernier se décline en deux options, la “half-measure” qui crée une version en cache de la page demandée et la renvoie au utilisateurs au travers de Statamic. La deuxième option (“full-measure”) quant à elle crée une version en cache qui sera directement servie par le serveur sans avoir à charger le CMS.

Parce que toutes les pages d’un site ne sont pas destinées à être statiques, il est possible d’en exclure certaines du cache. Cela permet de préserver les fonctionnalités dynamiques (listings aléatoires, formulaires de contact, …).

Prix / Support

Statamic est distribué sous license commerciale mais propose une version d’essai gratuite disposant de toutes les fonctionnalités pour une installation sur un serveur local. Il n’est donc pas obligatoire d’acheter de license lors de la phase de développement. Par la suite, il faudra débourser 199$ pour passer son site en production. Chaque license s’accompagne d’un support de 12 mois ainsi que l’accès à toutes les mises à jour de la même branche (ex. v2.*).

Il existe une formule “unlimited sites” destinée aux agences qui se présente comme un abonnement mensuel de 199$. Cette dernière offre la possibilité d’utiliser Statamic pour un nombre illimité de sites tout en bénéficiant du support et des mises à jour.

Extensibilité

Statamic est livré avec un outil en ligne de commande permettant de générer tout le nécessaire à la création de nouvelles fonctionnalités (addons) et bénéficie d’une documentation claire et très bien fournie. De plus, Statamic étant basé sur le framework Laravel, il est possible d’utiliser toutes les fonctionnalités de ce dernier.

Communauté

Malgré ses faibles parts de marché, Statamic est soutenu par une communauté de professionnels compétents prêts à apporter leur aide. Elle s’organise autour du "Lodge", un forum où l’on échange autour de projets et questions. Il existe aussi un channel Slack où l’on peut chatter et poser ses questions de manière plus directe.

head

Conclusion

Statamic est un CMS très prometteur, moderne et respecant les derniers standards en matière de développement. Son prix, surprennant à première vue lorsqu’on est habitué aux CMS gratuits, se justifie par de nombreuses mises à jour et un support de qualité. Il ravira les développeurs par sa conception et ses possibilités et l’utilisateur lambda saura y trouver son compte rapidement. Si l’absence d’une base de données peut être pénalisante lorsque les relations et le traitement sur les données devient complexe, Statamic reste une très bonne alternative aux CMS les plus populaires.

Firstpoint

Firstpoint

Le blog

Nos derniers articles