feat(i18n): add locale support and translation validation
Description
Summary
This MR introduces full i18n infrastructure for English, Telugu, and Hindi, adds a globe-based language switcher in the toolbar, and enforces translation consistency via pre-commit checks.
What’s Included
- Integrated i18n stack (
i18next,react-i18next, browser language detector) - Added locale resources for:
- English (
en) - Telugu (
te) - Hindi (
hi)
- English (
- Added globe button (
🌐) language switcher with dropdown options:- English (English)
- తెలుగు (Telugu)
- हिन्दी (Hindi)
- Added selected-language checkmark (
✓) in dropdown - Persisted selected language via localStorage
- Converted remaining user-facing UI text to translation keys (excluding intern names/data values)
- Added translation validation script (
validate:i18n) for:- missing keys
- extra keys
- empty values
- Updated pre-commit hook to run i18n validation when locale files are staged
- Wired i18n validation into project validation flow
Scope Clarification
This MR does not change core business logic (team verification, analytics calculations, corpus API behavior, or standup slot logic).
All code changes are localization, UI text, language selection UX, and commit-time i18n quality checks.
Verification
-
npm run lint✅ -
npm run typecheck✅ -
npm run validate:i18n✅