Implementation of i18n & l10n Support with Language Switcher Dropdown
Description
The application currently supports only a single language, which limits accessibility and usability for users from different regions. To improve the user experience and make the application localization-ready, implement internationalization (i18n) and localization (l10n) support across the application. Additionally, add a language selection dropdown that allows users to dynamically switch between supported languages without reloading the application.
Requirements
- Set up i18n configuration in the project
- Add localization support for UI text/content
- Create translation files for supported languages
- Replace hardcoded text with translation keys
- Implement a language switcher dropdown component
- Ensure selected language persists across sessions
- Add fallback language handling
- Maintain scalability for adding future languages
Expected Outcome
Users should be able to:
- View the application in multiple languages
- Switch languages dynamically using the dropdown
- Experience consistent translations across the application
Acceptance Criteria
- Language dropdown is visible and functional
- UI updates immediately on language change
- Translation files are properly organized
- No hardcoded user-facing text remains
- Fallback language works correctly
- Language preference persists after refresh/navigation