WatchSGS is an android app that demonstrates the use of Jetpack Compose, MVVM, RxKotlin along with Watchmode API to recommend Movies & TV shows.
- Allows the user to view Movie and TV show recommendations with the help of Watchmode API.
- Built on Material 3 UI which is a Google’s open-source design system.
- Allows users to see the some basic details such as Poster, Plot overview and also the trailer if available.
- MVVM (Model-View-ViewModel) Architecture for clean and maintainable code.
- Hilt A dependency injection library for Android.
- Jetpack Compose A toolkit for building native Android UI in a declarative way.
- Retrofit for efficient API communication and networking.
- RxKotlin for handling multiple API calls concurrently and results efficiently.
- The Watchmode API provides two endpoints:
list-titlesandreleases.- The
releasesAPI includes a poster URL in its response but lacks a types parameter, making it unsuitable for distinguishing between Movies and TV Shows. - The
list-titlesAPI provides title IDs and basic information (name, year) but does not include poster URLs.
- The
- To handle this, I assumed that the titles API should be used since separate tabs for Movies and TV Shows were required, along with separate API calls for them.
- Since poster URLs were missing in the
list-titlesAPI, I implemented a placeholder image on the home screen cards to maintain UI consistency and for future improvement purpose.
- Clone the repository.
- Open the project in Android Studio.
- Add your Watchmode API Key in com.daniel.watchsgs.util.constants
- Build and run the application.
sample.mp4
- Vectors and icons by SVG Repo