Qu'est-ce qu'un générateur de site statique ?

Un générateur de sites statiques automatise le processus de codage de pages web HTML statiques.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Définir ce que fait un générateur de site statique
  • Comparaison entre les générateurs de sites statiques et les CMS
  • Explorer les avantages et les inconvénients de l'utilisation de générateurs de sites statiques

Copier le lien de l'article

Qu'est-ce qu'un générateur de site statique ?

Un générateur de sites statiques est un outil qui génère un site Web HTML statique complet à partir de données brutes et d'un ensemble de modèles. Essentiellement, un générateur de sites statiques automatise la tâche de codage des pages HTML individuelles et prépare ces pages à l'avance pour les utilisateurs. Comme ces pages HTML sont préconstruites, elles peuvent se charger très rapidement dans les navigateurs des utilisateurs.

Les générateurs de sites statiques sont une alternative aux systèmes de gestion de contenu (CMS) - un autre type d'outil pour gérer le contenu Web, générer des pages Web et mettre en œuvre des modèles. (Un modèle est un format réutilisable pour le contenu Web ; les développeurs utilisent des modèles pour éviter d'écrire le même formatage encore et encore). Les générateurs de sites statiques font généralement partie d'une approche du développement web JAMstack .

Qu'est-ce qu'un site web statique ?

Un site Web statique est composé d'une ou plusieurs pages Web HTML qui se chargent de la même manière à chaque fois. Les sites Web statiques diffèrent des sites Web dynamiques, qui se chargent différemment en fonction d'un certain nombre de données changeantes, telles que l'emplacement de l'utilisateur, l'heure de la journée ou les actions de l'utilisateur. Alors que les pages Web statiques sont de simples fichiers HTML qui peuvent se charger rapidement, les pages Web dynamiques nécessitent l'exécution d'un code JavaScript dans le navigateur afin d'être rendues.

Quelle est la différence entre un générateur de site statique et un CMS ?

Aux premiers jours de l'internet, les sites web étaient stockés sous forme de sites HTML statiques, avec toutes les pages web disposées et codées en dur à l'avance. Cette méthode était inefficace car elle obligeait les développeurs à coder manuellement chaque page Web.

Les systèmes de gestion de contenu (CMS) sont apparus comme un moyen pour les développeurs d'éviter toute cette configuration manuelle. Au lieu de coder les pages à l'avance, le contenu est stocké dans une base de données CMS, et lorsqu'un utilisateur demande une page, le serveur fait ce qui suit :

  1. Interroger la base de données pour trouver le bon contenu
  2. Identifie le modèle dans lequel le contenu s'insère
  3. Génère la page
  4. Servir la page à l'utilisateur

Le contenu du CMS doit correspondre à l'un des champs proposés par la base de données du CMS, mais tant que c'est le cas, il devrait apparaître à son emplacement correct sur le site Web à chaque fois.

Un générateur de site statique est un compromis entre ces deux approches. Comme un CMS, il permet aux développeurs d'utiliser des modèles et de générer automatiquement des pages Web, mais il le fait à l'avance, plutôt qu'en réponse à une demande de l'utilisateur. Cela permet d'accélérer les performances du site , car les pages Web sont instantanément prêtes à être livrées aux utilisateurs finaux. Il offre également une plus grande personnalisation aux développeurs, puisqu'ils ne sont pas limités par les champs de base de données proposés par le CMS.

Quels sont les avantages et les inconvénients de l'utilisation d'un générateur de site statique ?

Pour

  • Performances : Comme les générateurs de sites statiques créent les pages Web à l'avance et non à la demande (comme c'est le cas avec un CMS), les pages Web se chargent légèrement plus rapidement dans les navigateurs des utilisateurs.
  • Personnalisation : Les développeurs peuvent créer tous les modèles qu'ils souhaitent. Ils ne sont pas limités par les champs fournis par un CMS, ni par les modèles intégrés d'un CMS.
  • Un backend plus léger : Les sites web statiques sont légers et ne nécessitent pas autant de code à exécuter côté serveur, alors que les sites web basés sur le CMS interrogent constamment le côté serveur pour obtenir du contenu.

Cons

  • Peu ou pas de modèles préconstruits : L'inconvénient d'une personnalisation illimitée est que le démarrage peut être plus long. De nombreux générateurs de sites statiques ne sont pas fournis avec des modèles, et les développeurs devront passer beaucoup de temps à les construire à partir de zéro au début.
  • Pas d'interface conviviale : Il est plus difficile pour les utilisateurs non développeurs de publier du contenu en utilisant un générateur de site statique. Il n'y a pas d'interface CMS, et travailler avec des données brutes non formatées peut être intimidant pour les utilisateurs. En outre, l'assistance d'un développeur est souvent nécessaire pour effectuer des mises à jour du site.

Quel est le rapport entre JAMstack et les générateurs de sites statiques ?

JAMstack (JAM signifie "JavaScript, APIs, Markup") est une méthodologie permettant de créer efficacement des applications Web légères et performantes. Les applications JAMstack sont statiques, avec des API utilisées pour toute fonctionnalité dorsale. Les générateurs de sites statiques permettent aux développeurs de construire rapidement un frontal d'application JAMstack.

Comment les frameworks frontaux sont-ils utilisés avec les générateurs de sites statiques ?

Un framework frontend est une collection de fichiers et de dossiers de code préconstruit pour aider à la conception et au formatage d'un site Web. Les frameworks frontaux les plus courants sont Bootstrap, React et Vue.js, mais il en existe bien d'autres.

Les frameworks frontaux sont extrêmement utiles lorsque les développeurs construisent initialement un site Web. Cependant, les frameworks frontaux ne génèrent pas à eux seuls des pages Web HTML, à moins que le développeur n'utilise des outils supplémentaires. Un générateur de site statique peut être utilisé avec un framework pour qu'un développeur obtienne rapidement un site Web ou une application entièrement conçu et prêt à être utilisé. La plupart des générateurs de sites statiques permettent aux développeurs d'utiliser le framework de leur choix.

Qu'est-ce que le format Markdown ?

Markdown est un langage de balisage simple et largement utilisé pour le formatage du texte. De nombreux développeurs préfèrent aujourd'hui utiliser Markdown plutôt que le HTML traditionnel pour coder du contenu, et de nombreux générateurs de sites statiques prennent en charge Markdown.

Quels sont les générateurs de sites statiques les plus utilisés ?

De nombreux générateurs de sites statiques sont disponibles aujourd'hui. En voici quelques-uns qu'il est important de connaître :

  • Jekyll
  • Gatsby
  • Hugo
  • Next.js
  • Eleventy

Cloudflare Pages est hébergé sur le réseau mondial Cloudflare, qui se trouve à moins de 100 ms de 99 % du monde connecté à Internet pour une diffusion quasi instantanée du contenu aux utilisateurs finaux. Cloudflare Pages est construit sur Cloudflare Workers serverless functions et permet aux développeurs de construire des applications web légères et évolutives.

Apprenez à déployer un site Jekyll , un site Gatsby , un site Hugo , et bien plus encore avec les pages Cloudflare.