
Personnaliser
Documentation
Languages
The app ships with 10 built-in locales:
FR, EN, AR, DE, ES, HI, JA, PT, RU, ZH — with full RTL support for Arabic.
Where the strings live
Every translatable string lives under lib/l10n/, one .arb file per locale. .arb is Flutter's official localization format — plain JSON with a schema.
Regenerate the typed Dart bindings after any edit:
make gen-l10nEditing via setup.html
Open setup.html → Customizations → Languages. The GUI reads every .arb file and gives you a side-by-side editor with all locales as columns. You can:
- Change any string in place.
- Add a new locale — the GUI creates a fresh
.arband seeds it from the English source. - Remove a locale you don't ship.
Save. Then run make gen-l10n to regenerate the Dart bindings.
Adding a new locale by hand
If you'd rather do it in a code editor:
- Copy
lib/l10n/app_en.arbtolib/l10n/app_xx.arb(wherexxis your locale code, e.g.itfor Italian). - Translate every value. Keep the keys and the ICU placeholders intact.
- Add the locale code to
supportedLocalesinl10n.yaml. - Run
make gen-l10n.
RTL
The app already flips its layout automatically when the device locale is RTL. If you add a new RTL locale (e.g. he for Hebrew), you don't need any code change — Flutter's Directionality handles it.