Мова -- душа народу | Language is the soul of a nation
A free, open-source Ukrainian language course from A1 to C2, based on the Ukrainian State Standard 2024 and aligned with CEFR.
A comprehensive Ukrainian language curriculum with 1,503 modules across 14 tracks:
- 6 core CEFR levels (A1 -- C2) covering grammar, vocabulary, and communication
- 8 specialization tracks -- history, biographies, literature, professional Ukrainian, Old East Slavic, and Ruthenian
- Theory-first approach -- understand grammar deeply, not just memorize phrases
- Interactive exercises -- quizzes, matching, fill-in-the-blank, error correction
- Cultural context -- decolonization perspective, authentic Ukrainian sources
- 100% free -- no ads, no subscriptions, no paywalls
| Level | Modules | Description |
|---|---|---|
| A1 | 64 | Beginner -- Cyrillic alphabet, basic grammar, practical scenarios |
| A2 | 76 | Elementary -- All 7 cases, aspect intro, practical scenarios |
| B1 | 100 | Intermediate -- Aspect mastery, motion verbs, communication |
| B2 | 85 | Upper-Intermediate -- Passive voice, registers, professional basics |
| C1 | 106 | Advanced -- Stylistics, literature, complex grammar |
| C2 | 91 | Mastery -- Native-level proficiency |
| Track | Modules | Description |
|---|---|---|
| HIST | 140 | Ukrainian history from origins to present |
| ISTORIO | 136 | Advanced historiography -- primary sources, imperial mechanisms |
| BIO | 176 | Notable Ukrainians through history |
| LIT | 221 | Ukrainian classics and literary analysis |
| B2-PRO | 40 | Professional -- business communication, technical domains |
| C1-PRO | 50 | Professional mastery -- executive, academic, specialized |
| OES | 103 | Old East Slavic -- historical linguistics (X--XIII century) |
| RUTH | 115 | Ruthenian -- Middle Ukrainian (XIV--XVIII century) |
- 45 million speakers worldwide
- Rich literary tradition -- Shevchenko, Franko, Lesya Ukrainka
- Unique grammar -- 7 cases, verbal aspect, motion verb system
- Growing global interest -- solidarity with Ukraine
Visit learn-ukrainian.github.io and start with A1.
git clone https://github.com/learn-ukrainian/learn-ukrainian.github.io.git
cd learn-ukrainian.github.io
npm install
# Start the website (Astro Starlight)
npm run dev:starlight
# Opens at http://localhost:4321/Requirements: Node.js 20+, Python 3.12+ (for build scripts and audits)
learn-ukrainian/
├── curriculum/l2-uk-en/ # Source curriculum
│ ├── plans/{track}/ # Module plans (source of truth)
│ ├── {track}/ # Content, activities, vocabulary
│ │ ├── meta/ # Build configuration
│ │ ├── activities/ # Interactive exercises (YAML)
│ │ ├── vocabulary/ # Vocabulary lists (YAML)
│ │ ├── research/ # Research notes (seminar tracks)
│ │ └── status/ # Audit results (auto-generated)
│ └── curriculum.yaml # Module manifest
├── starlight/ # Website (Astro Starlight)
│ └── src/content/docs/ # Published module pages (MDX)
├── scripts/ # Build tools, audits, batch processing
├── schemas/ # JSON Schema for YAML validation
└── docs/ # Architecture docs, best practices
- CEFR-aligned -- Common European Framework of Reference for Languages
- Ukrainian State Standard 2024 -- Official language proficiency requirements
- Automated audits -- every module checked for word count, vocabulary, activities, naturalness
- Cross-agent review -- AI-assisted build pipeline with adversarial quality gates
We welcome contributions! See CONTRIBUTING.md for guidelines.
Areas where help is especially welcome:
- Native speaker review of Ukrainian text
- Activity design and testing
- Bug reports and content corrections
MIT -- free to use, modify, and distribute.
Слава Україні! 🇺🇦
Star us on GitHub to support Ukrainian language education.