Native Android application for Readmigo - AI-powered English reading companion.
- Language: Kotlin
- UI Framework: Jetpack Compose
- Minimum SDK: 26 (Android 8.0)
- Architecture: MVVM with Clean Architecture
- DI: Hilt
- Database: Room
- Networking: Retrofit + OkHttp
- C++ Engine: Custom typesetting engine via NDK/JNI
- Immersive reading experience with page curl, scroll, and slide modes
- AI-powered word and sentence explanations
- Text-to-Speech with sentence highlighting
- Character Map and Story Timeline for following the plot
- Highlights and Notes
- Reading progress sync across devices
- Offline reading support
├── app/
│ └── src/main/
│ ├── java/com/readmigo/app/
│ │ ├── core/ # Core utilities, DI, data layer
│ │ ├── features/ # Feature modules
│ │ │ ├── auth/ # Authentication
│ │ │ ├── library/ # Book library & bookstore
│ │ │ ├── reader/ # Reading experience
│ │ │ └── profile/ # User profile & settings
│ │ └── navigation/ # Navigation graph
│ └── res/ # Resources
├── app/src/main/cpp/
│ └── typesetting/ # C++ typesetting engine (git submodule)
└── gradle/
| Platform | Link |
|---|---|
| Google Play | Readmigo on Google Play |
| Website | readmigo.app |
| API | api.readmigo.app |
# Clone with submodules
git clone --recurse-submodules https://github.com/readmigo/android.git
# Build debug APK
./gradlew assembleDebug
# Install on connected device
./gradlew installDebug
# Run tests
./gradlew test
# Build release AAB (requires keystore.properties)
./gradlew bundleReleaseReleases are deployed to Google Play via GitHub Actions:
Actions → Release to Play Store → Run workflow → select track
Tracks: internal → alpha → beta → production
- Production:
com.readmigo.app