AOSSIE-Org / AOSSIE-Org/Ell-ena

FEATURE REQUEST:Add Multi-Language (i18n) Support with User-Selectable Language Preference

Aperta
#96 4 commenti 1 reazione 0 assegnatari Vedi su GitHub
Lingua principale
Dart
Stelle
54
Fork
110
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Is your feature request related to a problem?

- [x] Yes, it is related to a problem

### Describe the feature you'd like

Context

The application currently supports only English, which limits accessibility for non-English users. Adding internationalization (i18n) will improve usability and make the app more inclusive for a global audience.

Problem Statement
There is no mechanism to display the app UI in multiple languages or allow users to select their preferred language. All text is hardcoded in English, and language preference cannot be customized from within the app.

Expected Outcome
The app supports multiple languages using Flutter’s localization system
A Language option is available under Profile → Preferences
Users can select their preferred language manually
The selected language:
Applies across the entire app UI
Persists across app restarts
Overrides the system default language when set

Current Behavior
UI text is displayed only in English
No language or localization settings exist in the app
Non-English users have reduced accessibility

Proposed Solution / Implementation Plan
Introduce Flutter Localization
Use intl and flutter_localizations
Enable flutter gen-l10n
Refactor UI Strings
Replace hardcoded strings with localization keys
Create .arb files for each supported language
Language Selection UI
Add a language selector under Profile → Preferences
Allow users to switch languages at runtime
Persistence

Store selected language:
Initial Language Support
English (default)
One additional language (e.g., Hindi)
Architecture should allow easy future expansion

Acceptance Criteria
All user-facing text is localized
Language can be changed from Profile → Preferences
App updates language instantly without restart
Language preference persists after reopening the app
No regression in existing functionality

Impact
Improves accessibility and inclusivity
Enables global adoption of the app
Provides a scalable foundation for adding more languages

Difficulty
Medium – requires UI refactoring and state management, but no backend breaking changes.

### Record

- [x] I agree to follow this project's Code of Conduct
- [x] I want to work on implementing this feature

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.