Premier billet avec Hugo
Créer rapidement un blogue à partir de fichiers Markdown, nous en avons toujours rêvé… et la communauté des développeurs Go l’a fait !
Introduction⌗
Hugo est un logiciel pour générer un site statique à partir d’une arborescence de fichiers Markdown.
Création du site⌗
L’arborescence du site est créée dans le répertoire triaxx.io avec la commande ci-dessous.
$ hugo new site triaxx.io
Cette arborescence contient un ensemble de répertoires et de fichiers.
$ cd triaxx.io
$ find .
.
./archetypes
./archetypes/default.md
./content
./layouts
./static
./i18n
./data
./assets
./themes
./hugo.toml
Création du thème⌗
Hugo a besoin d’un thème pour générer les pages du site. Il est possible d’en créer un vierge avec la commande suivante.
$ hugo new theme triaxx
Un thème consiste également en une arborescence.
$ find themes/triaxx -depth 1
themes/triaxx/archetypes
themes/triaxx/content
themes/triaxx/layouts
themes/triaxx/static
themes/triaxx/i18n
themes/triaxx/data
themes/triaxx/assets
themes/triaxx/hugo.toml
Création de contenu⌗
Créer un billet est aussi simple que de créer un fichier Markdown :
$ hugo new content posts/first-post.md
Le fichier créé contient une en-tête qui sera utilisée lors de la construction du site. Il s’agira alors de rédiger le contenu au format Markdown.
+++
date = '2025-05-05T22:43:11+02:00'
draft = true
title = 'First Post'
+++
# Mon premier billet
Je suis fier d'annoncer que je viens de publier mon premier billet avec Hugo !
Construction et rendu du site⌗
Le site est construit en appelant cette simple commande :
hugo
En plus de cela, il est possible de lancer un serveur - qui construira automatiquement le site - en écoute sur le port (1313 par défaut).
hugo server --buildDrafts --disableFastRender
L’option --buildDrafts permet de construire les brouillons de billet (lorsque la valeur de leur variable draft est à true). L’option --disableFastRender permet de reconstruire le suite lorsque qu’un changement dans son arborescence est détecté. La page est également rechargée automatiquement.
Utilisation d’un thème existant⌗
La communauté propose de nombreux thèmes élégants. Le Guide de démarrage rapide de Hugo propose d’installer un thème avec Git. Nous en installons un en téléchargeant son archive.
curl --location https://github.com/mirus-ua/hugo-theme-re-terminal/archive/refs/tags/v2.4.1.tar.gz --output hugo-theme-re-terminal-2.4.1.tar.gz
tar --extract --gzip --file hugo-theme-re-terminal-2.4.1.tar.gz --cd themes
mv themes/hugo-theme-re-terminal-2.4.1 themes/re-terminal
echo "theme = 're-terminal'" >> hugo.toml
rm -f hugo-theme-re-terminal-2.4.1.tar.gz