A personal project and sandbox for experimenting with modern Android development, architecture, and libraries.
ℹ️ Note: As an experimental playground, some features are works-in-progress and may lack complete test coverage or a fully separated data/domain layer.
- Project Setup Guide: Instructions on building the project and configuring required API keys (Google Maps, TMDB).
- Jetpack Playgrounds: Detailed information about the specific experiments and features.
- Architecture Overview: Deep dive into the project's architectural decisions.
Built with modern Android development practices in mind:
- UI: Jetpack Compose
- Language: Kotlin & Coroutines/Flows
- Architecture: MVI (Model-View-Intent)
- Functional Programming: Arrow-kt (
Either, Optics) - Dependency Injection: Koin
- Networking: Retrofit
- Testing: JUnit 5, Turbine, Roborazzi (Screenshot Testing)
- Modularization: Multi-module architecture by feature
The app is split into several standalone feature modules for experimentation, including:
movies: TMDB API integration.location-tracker: Google Maps SDK integration.authentication: Login/Registration UI and flows.posts,file-downloader,notifications,game, and more.