Enfin disponible ! Développement d'un nouveau CMS Headless Vol. 3
Le CMS headless KuroCMS natif Cloudflare est officiellement disponible. Avantages : installateur web sans PC, partage de modèles en un clic, gestion multilingue par IA et mises à jour faciles.
KuroCMS est enfin officiellement disponible ! C'est un CMS headless de nouvelle génération, multilingue et totalement gratuit, offrant une diffusion ultrarapide sur l'edge de Cloudflare et une configuration simple depuis un smartphone.
Il existe d'innommables plates-formes CMS dans le monde. Cependant, lorsque des développeurs individuels ou des propriétaires de petites entreprises tentent d'obtenir « leur propre domaine », « leur propre design » et « une vitesse d'affichage ultrarapide », la difficulté et les coûts d'exploitation mensuels grimpent en flèche. Mais l'objectif de KuroCMS, dont nous avons discuté dans les volumes 1 et 2 de cette série, est enfin atteint ! Avec la sortie officielle de la version 1.7.0, cette troisième entrée du journal de développement détaillera les différentes fonctionnalités récemment ajoutées et son attrait irrésistible. D'ailleurs, ce site Kurousagi a également complètement remplacé Strapi par KuroCMS et l'utilise déjà en production.
Bien sûr, il reste encore beaucoup de place pour l'amélioration et la correction de bugs, mais nous avons décidé de le publier aujourd'hui car il s'est avéré utilisable après deux à trois jours de tests.
La fusion du « totalement gratuit » et d'une « vitesse d'affichage sans limite » créée par Cloudflare Native
La principale caractéristique architecturale de KuroCMS est que son backend et son infrastructure d'hébergement sont tous nativement couplés aux environnements d'edge computing de Cloudflare (Workers, D1, KV, R2, Workers Assets).
Les CMS headless traditionnels et les plates-formes comme WordPress nécessitaient des frais d'hébergement mensuels allant de quelques centaines à quelques milliers de yens, ainsi que la gestion de base de données. Cependant, KuroCMS est conçu pour maximiser l'utilisation de l'offre gratuite (Free Tier) de Cloudflare. Pour l'exploitation d'un blog standard, il peut fonctionner pour un coût mensuel de « exactement 0 yen ».
[Indicateurs de l'offre gratuite Cloudflare]
・Workers (exécution du serveur) : 100 000 requêtes/jour
・D1 (base de données SQLite) : 5 Go de stockage
・KV (cache de page) : 100 000 lectures / 10 000 écritures par jour
・R2 (stockage média) : 10 Go de stockage / 1 000 000 d'opérations par mois
Ces limites sont très peu susceptibles d'être dépassées pour des sites personnels ou de petite à moyenne taille.
De plus, il n'y a aucun compromis sur la vitesse d'affichage. KuroCMS utilise un mécanisme de mise en cache ultra-rapide à trois niveaux. À la demande, l'edge le plus proche (cache edge) répond, et en cas de cache miss, les données sont renvoyées instantanément depuis le stockage KV. Cela permet d'obtenir un temps de chargement de page (TTFB) inférieur à 100 millisecondes depuis n'importe où dans le monde, offrant des performances qui éliminent complètement le stress de l'utilisateur.
Bien que le site résultant s'affiche à des vitesses ultra-rapides en utilisant Vanilla JS et Tailwind CSS sans aucune bibliothèque dépendante, KuroCMS lui-même n'utilise aucun framework. Par conséquent, il n'y a pas besoin de gérer les versions du framework ou de faire des corrections d'adaptation, et comme il n'y a pas de surcharge liée à l'utilisation de frameworks, KuroCMS fonctionne incroyablement vite.
Pas besoin de PC ! Un « Installateur Web » qui peut même être lancé depuis un smartphone
Les CMS headless ont généralement nécessité des opérations sur PC ou en ligne de commande (CLI), de la configuration de l'environnement de build à l'exploitation et au déploiement. Cependant, KuroCMS a été développé avec l'objectif d'un « déploiement facile pour tous sans PC », menant à la création d'un installateur Web dédié.
Les utilisateurs accèdent simplement à la page dédiée via un navigateur et lient leur compte Cloudflare. Les ressources telles que Workers, D1 et KV sont automatiquement provisionnées, lançant le panneau d'administration KuroCMS. Dès que le premier utilisateur est enregistré comme administrateur (admin), l'écran d'initialisation (/initialize/) est automatiquement verrouillé pour garantir une haute sécurité. C'est un système révolutionnaire qui permet d'effectuer toutes les étapes de déploiement et de configuration initiale directement depuis l'écran d'un smartphone.
Un « véritable modèle de données multilingue (i18n) » avec prise en charge intégrée de plusieurs langues
Dès le début du développement, KuroCMS a été conçu avec un support multilingue en vue d'une distribution mondiale. Sur ce site Kurousagi, il est configuré pour afficher un total de 9 langues, dont le japonais, l'anglais, l'allemand, le français, l'italien, l'espagnol, le chinois, le coréen et l'ukrainien. *Veuillez utiliser votre propre service d'IA cloud. Personnellement, comme présenté dans les articles précédents, je recommande Gemini pour un ton poli, ChatGPT pour un ton amical et Claude pour un ton formel.
| Code de langue | Langue d'affichage | Structure de l'URL | Caractéristiques |
|---|---|---|---|
| ja | Japonais (par défaut) | /path/to/page |
Définie comme langue de base. Kurousagi écrit uniquement des articles en japonais. |
| en | Anglais | /path/to/page?lang=en |
Conversion en anglais via l'API REST à l'aide d'IA cloud peu coûteuses comme Gemini. |
| zh / ko / de / fr / it / es / uk | Autres langues | /path/to/page?lang={code} |
Demandez à la même IA cloud de traduire séquentiellement de la version anglaise vers les autres langues. |
Le modèle de données est magnifiquement géré dans une relation « un-à-plusieurs », où les textes de traduction pour chaque langue (titre, résumé, body-html) sont rattachés à un identifiant d'article unique (did) et à un slug partagé. Lors de la traduction dans une nouvelle langue, vous pouvez simplement sélectionner la langue dans le menu déroulant du panneau d'administration pour dupliquer le contenu de la langue de base existante en un clic et commencer la traduction.
Briser les barrières du design : la fonction « Template » et le partage communautaire
En ce qui concerne la « liberté de design », un attrait majeur des CMS headless, KuroCMS propose également sa propre spécification unique. Il est équipé d'une « API Template » qui traite les codes spéciaux HTML + KuroCMS directement comme des modèles.
Ce moteur de modèle développe des variables et des listes sur le côté edge de manière dynamique ou lors de builds statiques, en écrivant simplement des expressions spéciales comme site.name ou #each articles.../each dans le HTML. Aucune connaissance des frameworks JavaScript lourds n'est requise, ce qui vous permet de créer entièrement votre propre design en utilisant du HTML/CSS/JS pur.
De plus, les modèles créés peuvent être partagés et téléchargés avec des utilisateurs du monde entier en un seul clic via la « Community Template Library ». Connectée directement à la bibliothèque publique via l'écran « Sélectionner un modèle » du panneau d'administration, vous pouvez vérifier les écrans d'aperçu avant l'installation et appliquer immédiatement votre design préféré à votre site.
[Génération automatique de miniatures]
Lorsque vous partagez votre modèle conçu avec la communauté, le panneau d'administration restitue temporairement le HTML dans une iframe et le capture automatiquement au format JPEG dans le navigateur à l'aide de la technologie html2canvas, l'enregistrant automatiquement comme miniature pour la bibliothèque. Les utilisateurs n'ont pas besoin de créer d'images manuellement.
Cohérence typographique avec la fonction « Web Font »
Même si vous déployez un modèle magnifiquement conçu, si les polices diffèrent selon le système d'exploitation du smartphone ou du PC du visiteur, cela peut gâcher l'impression du site. Pour résoudre ce problème, KuroCMS est équipé d'une gestion intégrée des polices Google.
Le panneau d'administration dispose d'un catalogue intégré de 40 polices Google triées sur le volet. Avec une interface utilisateur à double colonne, l'ajout de polices à charger, la modification de la priorité et la définition de la « police par défaut » peuvent être gérés facilement par glisser-déposer. Une fois qu'une police par défaut est définie, des liens CDN sont automatiquement injectés dans le <head> lors des builds publics, remplaçant les spécifications CSS du côté du modèle afin de rendre la typographie de l'ensemble du site uniforme et belle.
De plus, l'éditeur WYSIWYG du panneau d'administration (KuroEditor) est entièrement intégré à ces paramètres. Puisque vous pouvez écrire dans l'écran d'édition avec exactement la même police que sur le site public, le stress lié au fait que ce qui est écrit est différent de ce qui est publié est éliminé.
« Build Stream » pour le suivi visuel de la progression et mises à jour autonomes
Lors de l'exécution d'un « build à l'échelle du site » après la mise à jour d'un grand nombre d'articles, il est courant de se sentir inquiet si la progression n'est pas visible. KuroCMS propose une fonction qui renvoie un flux de progression au format NDJSON (Newline Delimited JSON) via l'API d'exécution de build (POST /api/build), affichant la progression en temps réel sur la barre de progression du panneau d'administration et dans le visualiseur de journaux.
Pendant le build, une fonction de cache (page_build_cache) ignore les pages inchangées, minimisant ainsi les accès redondants en écriture KV afin de maximiser l'efficacité de l'utilisation de l'edge.
De plus, le tableau de bord compte les écritures KV pour permettre aux utilisateurs de vérifier si les mises à jour peuvent être effectuées dans le cadre de l'offre gratuite. Cela les aide à évaluer leurs limites quotidiennes.
[Mises à jour en un clic]
Le plus grand obstacle à l'auto-hébergement d'un CMS headless open source était jusqu'à présent la pénibilité du processus de mise à jour. KuroCMS dispose d'une fonction de mise à jour automatique. Il communique avec le référentiel de publication officiel de GitHub, avertit le panneau d'administration lorsqu'une nouvelle version est disponible, et un simple clic sur le bouton « Mettre à jour » remplace automatiquement le script dans le Worker par la dernière version de KuroCMS. Aucune commande ou opération Git n'est requise.
Comparaison complète avec les principales plates-formes CMS
Enfin, nous résumons la comparaison entre KuroCMS et les principaux CMS existants (WordPress et Strapi 5 auto-hébergé).
| Élément de comparaison | KuroCMS | WordPress | Strapi 5 (Auto-hébergé) |
|---|---|---|---|
| Coût d'exploitation mensuel | Durablement gratuit (Dans l'offre gratuite) | Frais de serveur d'hébergement (à partir de 500 yens) | Frais VPS/PaaS (à partir de 1 000 yens) |
| Vitesse d'affichage/réponse | Ultrarapide (diffusion par cache edge) | Dépendant du serveur (tendance à ralentir) | Dépendant de la configuration (délai API existant) |
| Difficulté de déploiement | Facile avec l'installateur Web | Facile (installation automatique par l'hébergeur) | Difficile (configuration du serveur, commandes) |
| Multilingue | Multilingue. *Opérable par IA | Nécessite un plugin (configuration extrêmement complexe) | Standard (Configuration/UI difficile pour les débutants) *Semble en réalité buggé et inutilisable. Kurousagi a essayé de nombreuses fois. |
| Mises à jour | Un clic dans le panneau d'administration | Un clic dans le panneau d'administration | Nécessite l'exécution de commandes et un déploiement manuel |
| Licence | Licence Kuro basée sur MIT (Attribution ajoutée) | GPL | MIT |
Conclusion : Vers un nouveau standard pour les sites personnels et petits sites
KuroCMS est un produit révolutionnaire qui combine les avantages d'une vitesse d'affichage écrasante et de la liberté de conception d'un CMS headless sur Cloudflare d'une manière qui correspond à la simplicité et à la gratuité des services de blogs japonais. Avec une grande attention aux détails - comme la fonction de mise à jour automatique, l'exhaustivité du modèle multilingue et l'application par défaut des polices Web - KuroCMS est prêt à devenir le nouveau standard pour les futurs blogs personnels et petits sites Web.
Si vous êtes intéressé, visitez le site officiel de l'installateur et vivez par vous-même l'expérience d'un blogging ultra-rapide et confortable !