Commit avant changement d'agent vers devstral
This commit is contained in:
110
I18N_QUICKSTART.md
Normal file
110
I18N_QUICKSTART.md
Normal 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`
|
||||
Reference in New Issue
Block a user