A language learning application that helps users learn languages through text stories.
I've decided to implement a PWA instead of native app, thanks to Google. Read the story in our blog or in my LinkedIn.
Feel free to use a new PWA. It's not open-source yet, unfortunately.
๐ฌ๐ง ๐ช๐ธ ๐ฉ๐ช ๐ซ๐ท ๐ฎ๐น ๐ท๐บ ๐บ๐ฆ ๐ต๐ฑ ๐จ๐ฟ ๐ท๐ธ ๐ต๐น ๐ซ๐ฎ ๐ธ๐ช ๐ช๐ช ๐ฑ๐ป ๐ฑ๐น ๐ฑ๐บ
This project is currently a Work in Progress. It's being developed as an MVP with the goal of rapid development.
That's why:
- There are no Compose optimizations performed yet. Will be added after the basic implementation is complete.
- Single module. However, it's being developed keeping in mind future multi-module support, so most of the code is ready to be split into modules by copy-paste.
- No separation to Data/Domain level models. Will add later, for now using models from Data layer everywhere (and sometimes Presentation-level models).
- Commits are that huge.
- No tests. The most important ATM part - backend - is fully covered by tests, but not the client. Will add tests later.
- โ Android (Done)
- ๐ iOS (In progress, broken)
- ๐ Web (In progress, broken)
- Interactive stories for language learning
- Quiz: Answer the story-related questions
- Retelling: Retell the story and get instant feedback with detailed review
- Word and sentence learning tools
- Kotlin Multiplatform - Cross-platform development
- Compose Multiplatform - Cross-platform UI
- Material 3 - UI
- Koin - DI
- Ktor - HTTP client
- Kotlinx Serialization - JSON serialization/deserialization
- Kotlinx Coroutines - Asynchronous programming
- Kotlinx DateTime - Date and time handling
- Firebase Authentication - Authentication service (Google & Apple sign in)
- RevenueCat - IAP
- Appodeal - Ads
- KSoup - HTML parsing (for text highlighting)
Room - Cross-platform SQLite ORM- removed due to incompatibility with the WASM target
This application requires a backend server to run, which is closed-source.
Tests will be added later as this is an MVP focused on rapid development.
You can find the development instructions in this document.
This project is licensed under the Do What The Fuck You Want To Public License.
The license was changed from Attribution-NonCommercial-ShareAlike 4.0 International to WTFPL on June 1, 2026.







