Skip to main content

Localization

Maintain English, Sinhala, and Tamil ARB resources, layout safety, dates, and native-review status.

Salli supports:

  • English (en);
  • Sinhala (si); and
  • Tamil (ta).

Source files

lib/l10n/app_en.arb
lib/l10n/app_si.arb
lib/l10n/app_ta.arb

Flutter generates AppLocalizations classes. Locale is stored locally and applies at the root MaterialApp.

Add or change copy

  1. Add the key and metadata to English.
  2. Add matching keys to Sinhala and Tamil.
  3. Preserve ICU placeholders, plural/select structure, and variable names.
  4. Run generation through the normal Flutter build.
  5. Test the screen in all three locales.

Layout rules

  • Expect longer translated text.
  • Avoid fixed text heights.
  • Make dialogs scrollable with the keyboard open.
  • Keep bottom-sheet padding based on viewPadding.bottom.
  • Test large display/text settings and TalkBack semantics.
  • Use locale-aware intl dates and numbers.
  • Keep financial figures tabular where the theme specifies it.

Terminology

Some concepts need regional review. For example, “Bidding seettu” has the Sinhala term වෙන්දේසි සීට්ටුව; the correct Tamil wording must be confirmed with native speakers because usage varies.

Review status

Primary flows are localized, but Sinhala and Tamil remain draft translations. Native-language review is a release gate. Diagnostic helper copy may still need coverage.

Tests

The suite includes localization, privacy-copy contract, bottom-inset, modal, transaction editor, seettu, reports, settings, and accessibility checks.