Dans un paysage où les frameworks web ne cessent de gagner en complexité, Idoine adopte une approche délibérément différente. Ce générateur de site statique minimaliste incarne une philosophie du "juste nécessaire" - fournissant exactement ce dont vous avez besoin pour créer des sites web fonctionnels, légers et multilingues sans complexité superflue.
L'histoire derrière le nom
Le nom Idoine vient du français, signifiant "adapté", "approprié" ou "qui convient parfaitement". Cela capture parfaitement la philosophie du projet : fournir des outils qui sont exactement adaptés à la tâche à accomplir - ni plus, ni moins. Dans un monde de frameworks riches en fonctionnalités, Idoine choisit la simplicité par design.
Un choix délibéré d'outils
Au lieu de réinventer la roue, Idoine s'appuie sur des technologies éprouvées et stables :
- Grunt : Pour l'automatisation des tâches et le flux de développement
- Python avec Jinja2 : Pour le templating et la génération de contenu
- SCSS : Pour un styling maintenable
- Markdown : Pour la rédaction de contenu
- YAML : Front matter pour les métadonnées
Cette pile technologique soigneusement sélectionnée privilégie la simplicité et la fiabilité plutôt que les fonctionnalités de pointe.
Fonctionnalités principales
Bien que volontairement minimal, Idoine inclut les capacités essentielles pour les sites statiques modernes :
- Support multilingue : Internationalisation intégrée utilisant une structure de répertoire simple
- Rechargement en direct : Serveur de développement avec hot reloading pour une itération rapide
- Pipeline d'assets : Traitement automatisé des styles, scripts et fichiers médias
- Prêt pour la production : Builds optimisés avec minification CSS et gestion appropriée des assets
- Zéro configuration : Fonctionne immédiatement avec des paramètres par défaut sensés
- Compatible Netlify : Déploiement transparent avec configuration Netlify incluse
Sous le capot : Le pipeline de build
Le processus de build d'Idoine est transparent et efficace, orchestré par Grunt avec Python gérant la génération de contenu :
Flux de développement
Lorsque vous exécutez npm run dev
, Idoine :
- Construit toutes les pages HTML à partir du contenu Markdown en utilisant Python et Jinja2
- Compile le SCSS en CSS avec des source maps pour le débogage
- Applique Autoprefixer pour assurer la compatibilité cross-browser
- Copie les assets statiques dans le dossier de distribution
- Démarre un serveur local avec rechargement en direct à
http://localhost:9000
- Surveille les modifications pour reconstruire uniquement ce qui est nécessaire
javascript
grunt.registerTask("dev", [
"shell:build_html",
"convertMarkdown",
"sass:dev",
"postcss:dev",
"copy",
"connect",
"watch",
]);
Build de production
Pour la production (npm run build
), Idoine optimise tout :
- Nettoie le répertoire de distribution pour un build propre
- Traite tout le Markdown et les templates via Python
- Compile le SCSS avec des paramètres optimisés
- Applique Autoprefixer pour la compatibilité cross-browser
- Minifie le CSS pour réduire la taille des fichiers
- Copie et optimise les assets statiques
Le script de build Python gère la conversion du Markdown en HTML, applique les templates et maintient la structure multilingue. Il traite les métadonnées de front matter, prenant en charge les attributs de page personnalisés et le contenu localisé.
Premiers pas
Idoine est conçu pour vous permettre de démarrer rapidement avec un minimum de friction. Voici un guide étape par étape pour lancer votre premier site Idoine :
Prérequis
Assurez-vous d'avoir installé :
- Node.js 18 ou supérieur
- Python 3.9 ou supérieur
- npm (inclus avec Node.js)
- Git
Configuration initiale
bash
git clone [https://github.com/camauger/idoine]
cd idoine
npm install
python -m venv venv
source venv/bin/activate
venv\Scripts\activate
pip install -r requirements.txt
Ajouter une nouvelle langue
Idoine simplifie le contenu multilingue :
- Créez un nouveau répertoire de langue :
bash
mkdir -p src/locales/es/pages
- Ajoutez du contenu dans la nouvelle langue :
bash
touch src/locales/es/pages/index.md
- Éditez le fichier avec le contenu localisé.
- Redémarrez le serveur de développement, et votre site prendra maintenant en charge la nouvelle langue.
Personnaliser les templates
Pour modifier l'apparence du site :
- Éditez les templates dans le répertoire
templates/
pour ajuster les layouts - Modifiez les fichiers SCSS dans
src/styles/
pour changer le style - Ajoutez des polices personnalisées ou des images dans
src/assets/
Le serveur de développement se rechargera automatiquement lorsque vous enregistrez les modifications, vous donnant un retour immédiat.
Un modèle sur lequel construire
Bien qu'Idoine soit minimal, il est également conçu pour être étendu. La structure du projet est claire et logique.
La séparation entre le contenu (/src/locales
), la présentation (/templates
) et le style (/src/styles
) facilite la maintenance et l'extension de votre site à mesure qu'il se développe. Le contenu est rédigé en Markdown avec du front matter YAML.
Rejoignez le mouvement de la simplicité
Idoine ne vise pas à concurrencer les générateurs de sites statiques riches en fonctionnalités. Au lieu de cela, il offre un point de départ pour ceux qui valorisent :
- La simplicité plutôt que la complexité
- La convention plutôt que la configuration
- La concentration plutôt que la surcharge de fonctionnalités
- La stabilité plutôt que les fonctionnalités de pointe
Si cette philosophie vous parle, essayez Idoine. Clonez le template, créez votre contenu et profitez d'un chemin direct vers un site statique multilingue.
Souvenez-vous : parfois, moins c'est plus. Et c'est exactement ce qu'Idoine s'efforce d'être - idoine pour vos besoins.
Découvrez Idoine sur GitHub.