Commit avant changement d'agent vers devstral

This commit is contained in:
2025-11-13 17:00:47 +01:00
parent a09b73e4f1
commit cc1d6880a7
25 changed files with 2903 additions and 89 deletions

110
I18N_QUICKSTART.md Normal file
View File

@ -0,0 +1,110 @@
# 🚀 Quick Start - Internationalisation Personotes
## ⚡ Mise en route rapide
### 1. Build du frontend
```bash
cd frontend
npm install
npm run build
```
### 2. Démarrer le serveur
```bash
go run ./cmd/server
```
### 3. Tester dans le navigateur
1. Ouvrir http://localhost:8080
2. Cliquer sur l'icône ⚙️ (Settings)
3. Aller dans l'onglet "Autre"
4. Sélectionner 🇬🇧 English ou 🇫🇷 Français
5. L'interface se recharge automatiquement
## ✅ Système d'i18n installé
- **200+ traductions** : EN ✅ | FR ✅
- **Détection automatique** de la langue du navigateur
- **Persistance** du choix utilisateur
- **API** : `/api/i18n/en` et `/api/i18n/fr`
- **UI** : Sélecteur dans Settings > Autre
## 📁 Fichiers ajoutés
```
locales/
├── en.json ← Traductions anglaises
├── fr.json ← Traductions françaises
└── README.md ← Guide contributeurs
internal/i18n/
├── i18n.go ← Package i18n
└── i18n_test.go ← Tests
frontend/src/
├── i18n.js ← Module i18n client
└── language-manager.js ← Gestionnaire UI
```
## 📝 Utilisation
### JavaScript (Frontend)
```javascript
import { t } from './i18n.js';
// Simple
alert(t('fileTree.enterNoteName'));
// Avec variables
alert(t('editor.confirmDelete', { filename: 'test.md' }));
```
### Go (Backend)
```go
// Dans un handler
h.t(r, "errors.methodNotAllowed")
// Avec variables
h.t(r, "editor.confirmDelete", map[string]string{
"filename": "test.md",
})
```
### HTML (Templates - optionnel)
```html
<!-- Attribut data-i18n pour traduction automatique -->
<button data-i18n="editor.save">Sauvegarder</button>
```
## 🌍 Ajouter une langue
1. Créer `locales/de.json` (exemple)
2. Copier la structure de `en.json`
3. Traduire les valeurs
4. Ajouter dans Settings (templates/index.html)
5. Redémarrer le serveur
## 📚 Documentation complète
Voir `I18N_IMPLEMENTATION.md` pour les détails complets.
## ⚠️ Notes importantes
- ✅ Le code existant **n'est pas cassé**
- ✅ Les notes utilisateur **ne sont pas affectées**
- ✅ Le système est **rétro-compatible**
- ⏳ Les templates HTML gardent leur texte français pour l'instant
- ⏳ Les messages d'erreur backend restent en français (logs uniquement)
## 🎯 Prochaines étapes (optionnel)
1. Migrer les templates HTML vers i18n
2. Migrer les alert() JavaScript
3. Migrer les messages d'erreur backend
4. Ajouter d'autres langues (ES, DE, IT, etc.)
---
**Status actuel** : ✅ Infrastructure complète et fonctionnelle
**Impact** : ✅ Zéro breaking change
**Prêt à utiliser** : ✅ Oui, après `npm run build`