Feature request: Internationalization (i18n) support
Context
Pipali currently has all UI strings hardcoded in English across the frontend codebase. There is no internationalization framework in place — no locale files, no string extraction, no language detection.
As Pipali is still early (v0.1), now would be the ideal time to introduce i18n before the number of hardcoded strings grows further.
Proposal
-
Add an i18n framework — react-i18next or i18next would be the natural fit given the React frontend. Alternatively, a simpler approach with JSON locale files and a custom hook could work.
-
Extract all user-facing strings into locale files (e.g., locales/en.json).
-
Detect system locale — Tauri provides access to the system locale, which could be used as the default language.
-
Add a language selector in settings for manual override.
What I'm offering
I'd be happy to contribute the French (fr) translation once the i18n framework is in place and strings are extracted. I'm a native French speaker based in Belgium.
If the team prefers a specific i18n approach or library, I'm flexible — just point me to the convention and I'll follow it.
Questions for maintainers
- Is i18n support already on the roadmap?
- Any preferred library or approach?
- Would a PR that adds
react-i18next + extracts English strings + adds French be welcome, or would you prefer to handle the framework setup internally and open translation contributions afterward?
Environment
- Pipali v0.1 (AppImage, Linux)
- Proposed locale:
fr (French)
Feature request: Internationalization (i18n) support
Context
Pipali currently has all UI strings hardcoded in English across the frontend codebase. There is no internationalization framework in place — no locale files, no string extraction, no language detection.
As Pipali is still early (v0.1), now would be the ideal time to introduce i18n before the number of hardcoded strings grows further.
Proposal
Add an i18n framework —
react-i18nextori18nextwould be the natural fit given the React frontend. Alternatively, a simpler approach with JSON locale files and a custom hook could work.Extract all user-facing strings into locale files (e.g.,
locales/en.json).Detect system locale — Tauri provides access to the system locale, which could be used as the default language.
Add a language selector in settings for manual override.
What I'm offering
I'd be happy to contribute the French (fr) translation once the i18n framework is in place and strings are extracted. I'm a native French speaker based in Belgium.
If the team prefers a specific i18n approach or library, I'm flexible — just point me to the convention and I'll follow it.
Questions for maintainers
react-i18next+ extracts English strings + adds French be welcome, or would you prefer to handle the framework setup internally and open translation contributions afterward?Environment
fr(French)