J’avais besoin d’un espace pour présenter mon travail, partager des idées et écrire des articles — qu’il s’agisse de tutoriels, de critiques, d’éditoriaux ou de simples billets de blog. GitHub est idéal pour héberger du code, mais je voulais un espace à moi sur le web. Ce blog me sert aussi de portfolio numérique.
Quelles options pour bloguer ?
Voici quelques plateformes populaires pour démarrer un blog :
Ces plateformes tout-en-un offrent des fonctionnalités intéressantes :
- Mise en page automatisée pour se concentrer sur le contenu
- SEO intégré
- Éditeur dans le navigateur
- Gestion des médias, plugins et thèmes
- Hébergement, base de données et mises à jour gérés automatiquement
Mais je voulais quelque chose de gratuit, minimaliste, et entièrement sous mon contrôle.
GitHub Pages propose un hébergement gratuit pour du contenu statique — sans backend, sans base de données — juste du HTML, CSS, JS. Cette contrainte m’a amené à explorer les générateurs de sites statiques.
🚧 Mes raisons de choisir Hugo, et une réflexion plus approfondie, seront abordées dans un article à part.
Mise en place du blog
J’ai suivi ces 5 étapes (inspirées de l’article de Bhanu Chaddha) :
- Installer Hugo
- Créer le projet
- Initialiser Git
- Installer un thème via un sous-module
- Ajouter du contenu et lancer le site
1. Installer Hugo
Sous Ubuntu :
sudo snap install hugo --channel=extended
Vérifier l’installation :
hugo version
Exemple de sortie :
hugo v0.96.0+extended linux/amd64 BuildDate=2022-03-26T09:15:58Z
2. Créer un nouveau projet Hugo
Se rendre dans le dossier de travail :
cd ~/Documents
hugo new site emmanuel-io-github-io-hugo
Cela crée la structure du projet Hugo.
3. Initialiser Git
cd emmanuel-io-github-io-hugo
git init
git branch -m main
4. Installer un thème avec un sous-module
J’ai choisi le thème Ananke et je l’ai ajouté comme sous-module Git :
git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/ananke
5. Ajouter la configuration d’exemple et du contenu
Pour tester rapidement le site :
cp -R ./themes/ananke/exampleSite/{config.toml,content*,static*} ./
Puis lancer le serveur local :
hugo server
Accédez à http://localhost:1313 pour voir la version de démonstration du thème.
6. Personnaliser le site
À partir de là, j’ai commencé à adapter la configuration à mes besoins.
👉 Dans le prochain article, j’expliquerai comment j’ai structuré le site, ajouté le support multilingue, configuré GitHub Actions et personnalisé le thème.