AOSSIE-Org / AOSSIE-Org/Ell-ena

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

Open
#96 4 comments 1 reaction 0 assignees View on GitHub
Dominant language
Dart
Stars
54
Forks
110
PR merge metrics
No merged PRs in 30d

Description

### 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

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.