Multilingual Overview¶
KanjiIQ supports 51 languages for both UI and flashcard content — making it one of the most linguistically diverse Japanese learning platforms available.
Supported Languages¶
Tier 1: High-Traffic Languages¶
These languages are prioritized for quality and coverage:
| Language | Code | Script |
|---|---|---|
| English | en |
Latin |
| Spanish | es |
Latin |
| Portuguese | pt |
Latin |
| French | fr |
Latin |
| German | de |
Latin |
| Chinese (Simplified) | zh-CN |
Han |
| Chinese (Traditional) | zh-TW |
Han |
| Japanese | ja |
CJK |
| Korean | ko |
Hangul |
| Russian | ru |
Cyrillic |
Tier 2: Medium-Traffic Languages¶
| Language | Code | Language | Code |
|---|---|---|---|
| Arabic | ar |
Thai | th |
| Hindi | hi |
Dutch | nl |
| Indonesian | id |
Swedish | sv |
| Italian | it |
Bengali | bn |
| Polish | pl |
Hebrew | he |
| Turkish | tr |
Vietnamese | vi |
Tier 3: Underserved Communities¶
KanjiIQ deliberately supports languages often overlooked by other learning platforms:
| Category | Languages |
|---|---|
| European | Catalan, Danish, Finnish, Greek, Icelandic, Norwegian, Romanian, Ukrainian |
| Celtic | Irish, Scottish Gaelic, Welsh, Manx |
| Pacific | Fijian, Hawaiian, Samoan, Tahitian, Tongan |
| Asian | Burmese, Malay, Mongolian, Nepali, Punjabi, Tamil, Telugu, Tagalog |
| Other | Basque, Galician, Latin, Swahili |
Why 51 languages?
Most Japanese learning apps only support 5-10 major languages. KanjiIQ was built with the philosophy that learners from underserved language communities — Welsh speakers, Basque speakers, Hawaiian speakers — deserve the same quality learning experience as English or Spanish speakers.
Two Layers of Localization¶
KanjiIQ localizes at two distinct levels:
1. UI Localization¶
All interface text (buttons, labels, navigation, instructions) is translated into 51 languages using Flutter's ARB-based localization system.
frontend/lib/l10n/
├── app_en.arb # English (source template)
├── app_ja.arb # Japanese
├── app_fr.arb # French
├── app_de.arb # German
├── app_haw.arb # Hawaiian
└── ... (51 files)
See i18n Implementation for technical details.
2. Content Localization¶
Flashcard meanings, vocabulary definitions, and example sentences are translated into all 51 languages and stored as JSONB in PostgreSQL:
See Database Architecture for the JSONB storage strategy.
Locale-Based Language Selection¶
Rather than presenting all 51 languages to every user, KanjiIQ uses intelligent locale detection to show only relevant languages. A user in Brazil sees Portuguese, Spanish, and English by default, while a user in Japan sees Japanese, English, Chinese, and Korean.
See Locale Detection for the full detection system.