Android application utilizing the Kotlin programming language. This application seamlessly integrates with the renowned TMDb API , which allows users to explore and discover a wide range of popular, top-rated, and upcoming movies and TV shows. Furthermore, users can access trailers associated with the selected movies and TV shows, enhancing their overall viewing experience.
To run the app from Android Studio on your local machine you'll need to add api_key
value in your local.properties
file
The API key can be generated from this link.
The app is built on MVVM architecture in this branch and Multimodule Clean Architecture in this branch.
UI
- Hilt - Dependency Injection framework
- Coil - Load images from network source.
- Jetpack Navigation - Navigations from one fragment to another.
Data
- KTOR Client
- KotlinX Serialization - Serialization/Desirialization of JSON response from network.
- Paging 3 - Paging data fetched from network source.
System design
- Broadcast Receiver - handle network state changes and monitor network connectivity regardless of which component is currently active or in the foreground.
- WorkManager - Perform periodinc synchronization between local data and remote data
- Room - Cache data locally for offline capabilities