Skip to main content

EP-MEL-18 — Multi-Language & RTL/LTR

Companion: Backlog README · EPICS.md · canonical: 07-epics-and-user-stories.md §20

Summary

WaveR1 (+ new locales in R3)
PriorityP0
Primary ownertheme-config-service (i18n primitives) + every frontend
Participating servicesnotification-service (template variants), all frontends, pkg-i18n
Journeys realisedAll consumer-facing journeys
WorkflowsAll
Frontend surfacesAll
Story count6

Outcome

The platform is i18n-native and RTL/LTR-symmetric: bundles generated per locale; layouts use logical CSS so RTL "just works"; dates/numbers/currencies render locale-aware; native OS menus localised on desktop; locale-aware fonts loaded per locale; a translation workflow keeps content current.

Cross-cutting AC for this epic

  • ICU MessageFormat for every user-facing string; no string concatenation.
  • Logical CSS properties only (margin-inline-start, etc.); no left/right.
  • Pseudo-locale (xx-AC) test runs in CI for every PR touching frontend.
  • Locale fallback chain documented (e.g., ps-AF → ps → en).

Stories

IDTitle
US-MEL-0133i18n bundle generation & loading
US-MEL-0134RTL bidi-safe layouts
US-MEL-0135Locale-aware date, number, currency
US-MEL-0136Native OS menus per locale
US-MEL-0137Locale-aware fonts
US-MEL-0138Translation workflow for content

Full AC in ../07-epics-and-user-stories.md §20.

Cross-references