Site statique, générateur de site & Hugo

Ce site est motorisé par Hugo, je vous dis pourquoi j’ai choisi ce générateur de sites statiques. Mais avant, je vous dit pourquoi je pense qu’un générateur de sites statiques est une bonne idée. Et avant, je vous dit pourquoi un site statique – même généré à la main – est intéressant. Bon voyage dans ce billet en 3 étapes.

Note. Ce billet suppose que vous savez déjà ce qu’est un site statique.

Pourquoi un site statique?

Un site statique envoie au client les contenus exacts qui existent déjà sur le serveur, sans modifications autre qu’une éventuelle compression à la volée. Voici ce que je considère comme les principales forces des sites statiques:

Mais avant de mettre son site sur un serveur, il faut le créer. Passons au point suivant.

Pourquoi un générateur de sites statiques?

Fondamentalement, un générateur de sites statiques ou SSG (static site generator) est un outil qui permet d’automatiser des tâches répétitives. Il existe des centaines de générateurs de sites, avec différentes visées et dans différents langages. Mais voici quelques généralités sur le sujet:

Beaucoup d’outils permettent tout ou partie de ces opérations (et d’autres). Parmi ceux que j’ai utilisés et utilises encore: Eleventy (11ty), Sphinx ou Material for MkDocs. Mais il y a surtout Hugo, qui motorise ce site et pas mal d’autres que j’ai créés. Passons au point suivant.

Pourquoi j’ai choisi Hugo?

Hugo est donc un des principaux générateurs de site statiques. Il est plutôt généraliste et je le choisis a priori pour mes projets (sans exclure d’autres outils pour des développements plus spécifiques). Voici ce qui m’a convaincu chez Hugo:

Le code de plusieurs projets que je développe avec Hugo est disponibles dans mon compte GitHub. C’est le cas des sources de ce site.


Je pense que ce billet sera complété ou revu régulièrement. Il y a des choses auxquelles je n’ai pas pensé; d’autres que je pense assez marginales pour ne pas en parler aujourd’hui. Mais tous vos retours sont bienvenus pour essayer de l’améliorer.