# Internationalization (i18n) Guide Version: 1.0.0 | Languages: FR, NL, EN ## Frontend i18n ### Configuration ```typescript // frontend/src/lib/i18n.ts const translations = { fr: { 'auth.login': 'Connexion', 'buildings.list': 'Liste des immeubles', 'units.owners': 'Copropriétaires' }, nl: { 'auth.login': 'Inloggen', 'buildings.list': 'Lijst van gebouwen', 'units.owners': 'Mede-eigenaars' }, en: { 'auth.login': 'Login', 'buildings.list': 'Buildings list', 'units.owners': 'Co-owners' } }; ``` ### Usage in Svelte ```svelte ``` ## Backend i18n ### API Error Messages ```rust // Support multiple languages via Accept-Language header let error_msg = match lang.as_str() { "fr" => "Bâtiment non trouvé", "nl" => "Gebouw niet gevonden", _ => "Building not found" }; ``` ## Adding New Translations 1. Add key to `translations` object 2. Translate to FR, NL, EN 3. Use `t('new.key')` in components 4. Test with language selector ## Translation Files - `frontend/src/lib/translations/fr.json` - `frontend/src/lib/translations/nl.json` - `frontend/src/lib/translations/en.json` --- **Version**: 1.0.0