Skip to content

feat(i18n): add Swahili locale selector (#669) - #724

Open
nupedev wants to merge 1 commit into
Dev-AdeTutu:mainfrom
nupedev:feature/669-french-swahili
Open

feat(i18n): add Swahili locale selector (#669)#724
nupedev wants to merge 1 commit into
Dev-AdeTutu:mainfrom
nupedev:feature/669-french-swahili

Conversation

@nupedev

@nupedev nupedev commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Summary

Closes #669

Expands the frontend language experience to English, French, and Swahili while preserving the existing next-intl and localStorage approach.

Changes

  • Adds a complete Swahili catalog covering the existing English message keys, including dashboard labels, errors, payment plans, help and accessibility text, reporting, history, and tooltips.
  • Retains and exposes the existing English and French catalogs through a shared locale option list.
  • Replaces the binary Navbar toggle with responsive desktop and mobile selectors labeled English, Français, and Kiswahili.
  • Persists the selected locale under sg_locale, restores supported values on load, and cycles through all three locales through the provider API.
  • Adds focused provider tests for Swahili restoration, persistence, explicit selection, and three-locale cycling.

Verification

  • npm test -- --runInBand src/__tests__/I18nProvider.test.tsx — 2 passed.
  • git diff --check — passed.
  • Full TypeScript checking continues to report unrelated pre-existing Jest global/type-definition errors in the repository test suite; the changed provider, Navbar, and Swahili catalog have no TypeScript diagnostics.

@drips-wave

drips-wave Bot commented Aug 26, 2026

Copy link
Copy Markdown

@nupedev Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add French and Swahili translations

1 participant