Adding a New Language
1. Frontend Locale Files
Create:
frontend/src/locales/<lang>/common.jsonfrontend/src/locales/<lang>/auth.jsonfrontend/src/locales/<lang>/calendar.jsonfrontend/src/locales/<lang>/booking.jsonfrontend/src/locales/<lang>/settings.jsonfrontend/src/locales/<lang>/admin.jsonfrontend/src/locales/<lang>/automation.jsonfrontend/src/locales/<lang>/errors.jsonfrontend/src/locales/<lang>/validation.jsonfrontend/src/locales/<lang>/emails.jsonfrontend/src/locales/<lang>/notifications.jsonfrontend/src/locales/<lang>/mobile.json
Then update frontend/src/i18n/types.ts:
- add the language code to
SUPPORTED_LANGUAGES
2. Backend Locale Files
Create:
backend-nestjs/src/i18n/<lang>/auth.jsonbackend-nestjs/src/i18n/<lang>/validation.jsonbackend-nestjs/src/i18n/<lang>/calendar.jsonbackend-nestjs/src/i18n/<lang>/booking.jsonbackend-nestjs/src/i18n/<lang>/email.jsonbackend-nestjs/src/i18n/<lang>/notifications.jsonbackend-nestjs/src/i18n/<lang>/errors.jsonbackend-nestjs/src/i18n/<lang>/success.json
3. Database Validation
Extend language enum validation (DTOs/middleware) to include the new language.
4. Android Native Strings
Create:
frontend/android/app/src/main/res/values-<lang>/strings.xml
5. Run Validation
npm run i18n:validate
npm run i18n:export