Jamstack est un concept de développement récent, qui consiste à générer des pages Web statiques à partir d'un site web dynamique de votre site internet. Son nom est un acronyme de JavaScript, API et Markup. Les applications jamstack sont construites à l'aide de ces trois technologies pour offrir un front-end rapide, sécurisé et évolutif.
Jamstack n'est pas une technologie à proprement parler, mais plutôt une nouvelle façon de travailler pour le développement Web, qui peut être mis en œuvre à l'aide d'un certain nombre d'outils et de technologies. Cette "pile technologique" est souvent utilisée avec les CMS Headless tels que WordPress ou Strapi. Les principes clés de jamstack sont les suivants :
Si vous êtes à la recherche d'une meilleure façon de créer des sites Web, nous vous conseillons de vous intéresser à la pile technologique jamstack.
L'expérience de développement de Jamstack est optimale, car le frontend et le backend sont séparés. Le backend est uniquement servi par des API, ce qui signifie que différentes personnes peuvent travailler sur chaque partie sans affecter les autres.
Il est facile de revenir à une ancienne version du site si vous utilisez Git ou SVN. En effet, tout le code est versionné et il est donc possible de reconstruire une ancienne version du site à tout moment. Cela vous permet également de garder la trace des modifications par fichier, par collaborateur, et d'éviter de nombreuses erreurs.
Lorsqu'une nouvelle génération est nécessaire, votre serveur est notifié par des webhooks. Le serveur génère à nouveau le projet sous forme de fichiers statiques et met à jour les CDN avec les fichiers. Le site est alors en ligne.
L’ensemble de vos assets sont considérés comme statiques. Il faut comprendre par là qu’il s’agit de fichiers indépendants les uns des autres, un asset peut être une page HTML, un fichier JS, une image, une vidéo. L’ensemble de ses assets vont être déployés via un CDN et constitueront votre site web ou application. Il faut bien comprendre que c’est en cela que l’architecture Jamstack se différencie et apporte de la valeur à des architectures plus traditionnelles – il s’agit là d’une conception logicielle différente de l’existant qu’il faut appréhender avant de décider de l’implémenter .
Une fois vos assets statiques générés, le système va les déployer comme une photographique complète de votre site à un instant T. La nouvelle version de votre site sera disponible dans le monde entier en quelques secondes. Vous aurez la possibilité de rollback à n’importe quel moment en cas de problème.
Après le développement automatique, vous pouvez avoir un pré-rendu du site web statique, afin de valider la mise à disposition à tous de la nouvelle version il faudra invalider le cache (soit serveur soit via le CDN) afin de rendre la dernière version disponible.
Puisque tous les fichiers et les assets sont générés en amont, ils peuvent être servis via un CDN. C’est la méthode que l’on recommande à nos clients car elle procure de meilleure performance et un redimensionnement à la volée en cas de pic de traffic.
WordPress est une plateforme de création de sites web gratuite et open-source. Il est le blogging et le constructeur de sites web le plus facile et le plus puissant qui existe aujourd’hui.
Vue.JS est un framework progressif pour la création d’interfaces utilisateur. Il est conçu dès le départ pour pouvoir être adopté de manière progressive.
Nuxt.js est un framework pour la création d’applications Vue.js. Son objectif est d’aider les développeurs Vue à tirer parti des technologies de pointe facilement.
React est une bibliothèque JavaScript déclarative, efficace et flexible pour la création d’interfaces utilisateur à partir de petits morceaux de code isolés appelés « composants ».
React Native est un framework d'applications mobiles open source créé par Facebook pour créer des applications IOS, Android et UWP.
Ruby est un langage de programmation interprété, de haut niveau et polyvalent axé sur la simplicité du code et la productive des développeurs.