Theater is a nice looking app that consume api data from api.themoviedb.org to show both movies and tv series data
- Search
- Play movie trailers
- Read reviews
- See full movie cast
- Movies and TvSeries
- Kotlin - First class and official programming language for Android development.
- Coroutines - For asynchronous and more..
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- Flow - A flow is an asynchronous version of a Sequence, a type of collection whose values are lazily produced.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- Room - SQLite object mapping library.
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
- Room - SQLite object mapping library.
- DaggerHilt - Dependency Injection Framework
- Retrofit - A type-safe HTTP client for Android and Java.
- Jetpack Navigation - Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app
- Jetpack DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers. DataStore uses Kotlin coroutines and Flow to store data asynchronously, consistently, and transactional
- Material Components for Android - Modular and customizable Material Design UI components for Android.
- Use Room as offline cache
- Add test cases
- Add pagination to search query and List of movies and tv-series
- Add option to select either search for movies or tv-series