CodeForAfrica / CodeForAfrica/PromiseTracker
Promise Tracker | English and French language support (v2)
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
English and French language support (v2)
**What**: The old site offered a language switcher (En, Fr, Am, Arabic) routed by path. On v2 these routes go to 404 page, and there is no switcher.
**Expected**:
- A user can switch between English and French from the header. The URL reflects the language, English at root and French under /fr.
- Both the interface and the promise content itself (title, description, evidence) display in the chosen language, not just the menus and labels.
- Anything untranslated falls back to English rather than showing blank or a raw key. Links stay shareable and bookmarkable per language.
- Scope for v2: English (default) and French only.
- Locale routing by path prefix. English at root, French under /fr, standard Next.js i18n.
- UI strings come from translation files per locale, not hardcoded.
- The switcher preserves the current page when changing language, it does not reset to home.
Missing translations fall back to English.
- Layer 1, UI chrome (menu, buttons, Filter By, Sort By, Search). Bounded, developer owned, translate once.
- Layer 2, Payload labels (category names, status names, section headings). Bounded, needs a one-time French translation pass stored per locale in Payload.
- Layer 3, promise content (title, description, evidence). This must translate too. Unbounded and ongoing since it grows with every promise.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.