This movie application provides users with an extensive collection of films, allowing them to explore detailed information about each movie. Users can search for specific films and delve into their details. Additionally, the app enables users to watch trailers and video clips related to each film.
- This project embraces a robust development approach by incorporating Multi-Module, MVVM (Model-View-ViewModel), and Clean Architecture principles.
- The modular structure enhances maintainability, scalability, and extensibility.
- Each module can be developed independently, fostering code organization and minimizing dependencies.
- Clean Architecture principles are applied to each feature module in this project.
- MVVM provides a clear separation between the user interface (View) and business logic (ViewModel), promoting code readability.
Jetpack Compose:
Modern declarative UI Toolkit for AndroidNavigation Compose:
Allows to easily build multi screen appsPaging3
Allows for the gradual loading of large datasets from the data source easilyFirebase
for Authentication & StorageHilt
for dependency injectionCoroutines
for asynchronous programmingFlow
An asynchronous data stream that sequentially emits valuesOkHttp
for caching data.Retrofit
A modern and type-safe HTTP client for communicating with RESTful web services.DataStore
A modern data storage solution for storing and retrieving data, part of the Jetpack libraries.TMDB API
Popular and user editable database for movies and TV shows.