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.

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:
Missing translations fall back to English.