From 0bd2c12c139d7b381ddb25d01287db16f15cf24c Mon Sep 17 00:00:00 2001 From: Bruno Charest Date: Fri, 19 Jun 2026 10:18:37 -0400 Subject: [PATCH] docs: update roadmap point #63 i18n with current status - Marked completed: locale files, t() function, language selector, UI, help guide - Marked remaining: backend messages, docs i18n, unused keys cleanup, JS files audit - Estimated completion: 90% --- docs/ROADMAP.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index 162e45b..5ca8e6c 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -198,15 +198,21 @@ - [ ] Tests de charge : 5+ utilisateurs simultanés sur le même fichier ### 63. Internationalisation (i18n) — Multilingue -- **Effort :** 2-3 jours | **Impact :** 🟡 +- **Effort :** 2-3 jours | **Impact :** 🟡 | **Statut :** 🟢 90% complété - **Description :** Support de l'anglais et du français via un système de clés de traduction. L'interface est actuellement en français uniquement. L'anglais est nécessaire pour une adoption plus large. - **Sous-tâches :** - - [ ] Extraction des chaînes : inventaire de toutes les chaînes UI (~300) - - [ ] Format : JSON `fr.json` + `en.json` dans `frontend/locales/` - - [ ] Fonction `t(key, fallback)` → détection `navigator.language` - - [ ] Sélecteur de langue dans les paramètres (persisté localStorage) - - [ ] Traduction des messages backend (erreurs API, toasts) + - [x] Extraction des chaînes : inventaire de toutes les chaînes UI (~300) → 1171 clés extraites + - [x] Format : JSON `fr.json` + `en.json` dans `frontend/locales/` → 1171 clés parfaitement synchronisées + - [x] Fonction `t(key)` → `frontend/js/i18n.js` avec `_applyDOM()`, `data-i18n`, `data-i18n-attr`, `data-i18n-placeholder`, `data-i18n-html` + - [x] Sélecteur de langue dans les paramètres (persisté localStorage) → `localStorage.setItem('obsigate-lang')` + - [ ] Traduction des messages backend (erreurs API, toasts) — partiel : ~30 fichiers Python avec chaînes FR en dur - [ ] Documentation multilingue (README.fr.md, README.md) + - [ ] Nettoyage : ~563 clés inutilisées dans les locales (auto-générées, sans référence HTML) + - [ ] Tests : 17 fichiers JS sans `import { t }` — certains avec texte FR résiduel (ai.js, autocomplete.js, graph.js, etc.) + - [x] Interface principale : dashboard, sidebar, editor, search, settings → EN/FR complet + - [x] Guide d'utilisation : toutes les sections (Intro → Astuces) → 94 paragraphes traduits + - [x] Thèmes, palette de commandes, raccourcis → EN/FR complet + - [ ] Messages toast backend : `showToast()` reçoit parfois du texte FR en dur depuis Python ### 64. MFA — Authentification multi-facteurs - **Effort :** 2 jours | **Impact :** 🟡