Ajoute une architecture i18n Eleventy (locale + t via eleventyComputed)
Traduit l'intégralité du contenu en anglais, servi sur /en/
Ajoute un sélecteur de langue FR/EN dans la nav, qui mémorise le choix explicite dans localStorage
Détecte la langue du navigateur au premier chargement et redirige automatiquement / ↔ /en/ (sauf si un choix explicite a déjà été fait)
Ajoute les balises hreflang (fr/en/x-default), og:locale dynamique et l'entrée /en/ au sitemap
Les mentions légales restent en français uniquement (texte juridique propre à la juridiction française)
Plan de test
Parcourir / et /en/ et vérifier que tout le contenu est correctement traduit
Vérifier le sélecteur de langue (bouton FR/EN dans la nav) dans les deux sens
Vérifier la redirection automatique selon la langue du navigateur (à tester avec différentes langues navigateur)
Vérifier que le choix explicite via le sélecteur empêche une redirection automatique ultérieure
Vérifier le rendu mobile et les deux thèmes (clair/sombre) sur /en/
## Résumé
- Ajoute une architecture i18n Eleventy (`locale` + `t` via `eleventyComputed`)
- Traduit l'intégralité du contenu en anglais, servi sur `/en/`
- Ajoute un sélecteur de langue FR/EN dans la nav, qui mémorise le choix explicite dans `localStorage`
- Détecte la langue du navigateur au premier chargement et redirige automatiquement `/` ↔ `/en/` (sauf si un choix explicite a déjà été fait)
- Ajoute les balises `hreflang` (fr/en/x-default), `og:locale` dynamique et l'entrée `/en/` au sitemap
- Les mentions légales restent en français uniquement (texte juridique propre à la juridiction française)
## Plan de test
- [x] Parcourir `/` et `/en/` et vérifier que tout le contenu est correctement traduit
- [x] Vérifier le sélecteur de langue (bouton FR/EN dans la nav) dans les deux sens
- [x] Vérifier la redirection automatique selon la langue du navigateur (à tester avec différentes langues navigateur)
- [x] Vérifier que le choix explicite via le sélecteur empêche une redirection automatique ultérieure
- [x] Vérifier le rendu mobile et les deux thèmes (clair/sombre) sur `/en/`
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Résumé
locale+tviaeleventyComputed)/en/localStorage/↔/en/(sauf si un choix explicite a déjà été fait)hreflang(fr/en/x-default),og:localedynamique et l'entrée/en/au sitemapPlan de test
/et/en/et vérifier que tout le contenu est correctement traduit/en/