[Epic] Internationalize the frontend app (i18n)
Open
@Davidnet is already working on this.
Since Jun 30, 2026.
internationalization
- Dominant language
- Go
- Stars
- 432
- Forks
- 51
- PR merge metrics
- No merged PRs in 30d
Description
Tracking issue for internationalizing the Kiji Privacy Proxy frontend (Electron renderer + main process).
Goal
Route all user-facing strings through a translation layer and ship multiple languages.
Locales
en (base) · es · fr · ja. Non-English files start as machine-drafted translations for native-speaker refinement. Japanese needs a CJK font/layout check.
Approach
- Renderer:
react-i18next+i18next(+ browser-languagedetector), namespaced per feature area. - Electron main: standalone
i18nextsharing the same locale JSON (separate process — menus can't use React). - Language preference persisted via the existing Electron settings IPC.
Sub-tasks
- #571 — set up i18next infrastructure
- #572 — extract strings: core UI
- #573 — extract strings: settings
- #574 — extract strings: dashboard & sidebar
- #575 — extract strings: activity & mappings
- #576 — extract strings: onboarding, about & modals
- #577 — language selector + persistence
- #578 — translate Electron main-process menus
- #579 — tooling, drafts & CI guardrails
Rollout phases
- P1 — infra + full English extraction (no visible change; #571–#576)
- P2 — language selector + Spanish drafted end-to-end (#577, partial #579)
- P3 — French + Japanese drafts, Electron menus, CJK/layout pass, CI key-parity check (#578, #579)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.