Exploration de l'Arborescence du Projet
Le thème Hugo Apéro est optimisé pour la création de portfolios et de blogs personnels. Comprendre l'organisation de ses dossiers est essentiel pour une personnalisation efficace. Voici la répartition standard des fichiers et répertoires :
/
├── config.toml # Paramètres globaux du site
├── content/ # Fichiers Markdown (articles, pages)
├── static/ # Ressources non traitées (images, fonts)
├── themes/hugo-apero/ # Cœur du thème
│ ├── assets/ # Ressources précompilées (SCSS, JS)
│ ├── layouts/ # Templates HTML et shortcodes
│ ├── archetypes/ # Modèles de contenu par défaut
│ ├── i18n/ # Fichiers de traduction
│ └── static/ # Assets statiques spécifiques au thème
├── data/ # Données structurées (YAML, JSON, TOML)
├── netlify.toml # Configuration pour le déploiement CI/CD
└── hugo_build.lock # Verrou de compilation
Mécanismes de Démarrage et de Déploiement
Contrairement aux applications traditionnelles, l'écosystème Hugo ne repose pas sur un fichier d'exécution binaire ou un script de démarrage classique. Le moteur génère le site statique via la CLI. Néanmoins, deux fichiers dictent le comportement initial et le déploiement :
- config.toml : Le point de contrôle central. Il dicte les métadonnées gloables, les routes et les paramètres du thème avant même que la compilation ne commence.
- netlify.toml : Indispensable pour les pipelines d'intégration continue. Il définit les variables d'environnement, les commandes de build et les règles de redirection pour l'hébergemant.
Anatomie du Fichier de Configuration Principal
Le fichier config.toml orchestre l'ensemble du comportement du site. Pour le thème Apéro, il permet de gérer :
- Les métadonnées de base (URL racine, titre, langue).
- L'arborescence de navigation (menus principaux et secondaires).
- Les spécificités visuelles du thème (palettes de couluers, typographies, disposition de la barre latérale).
- Les intégrations tierces (liens sociaux, analytics).
Voici un exemple de configuration restructuré :
# Configuration de base
baseURL = "https://mon-portfolio.example.com/"
theme = "hugo-apero"
languageCode = "fr-fr"
# Paramètres spécifiques au thème Apéro
[params]
site_subtitle = "Développeur Fullstack & Passionné d'Open Source"
accent_color = "#e86a92"
sidebar_visible = true
# Définition des liens sociaux
[params.social]
mastodon = "@devuser@mastodon.social"
codeberg = "https://codeberg.org/devuser"
# Configuration du menu de navigation
[[menu.main]]
identifier = "projets"
name = "Portfolio"
url = "/projets/"
weight = 10
[[menu.main]]
identifier = "journal"
name = "Blog"
url = "/articles/"
weight = 20