- Hilt
- Retrofit
- Glide
- Jetpack ViewModel
- Kotlin Coroutine
- Kotlin Flow
- Live Data
- Swip Refresh Layout
- Display Top Rating CTA with a preview of posters
- Display Movie Listing
- Display Movie with Blurred Background
- Pagination
- Pull to refresh
- Sorting by Alphabetical Order or Date
First when the app is opened a top rating CTA is displayed that contains 5 pictures the fragment is associated with a viewModel that loads data and it's the same view model shared with the listing view and depending on the movies posters the pictures are selected randomly
When those pictures are updated ?
-
During the first load
-
During a pagination request they are also randomly picked from all the movies
-
During a refresh
Listing Screen that displays the top rated tv shows/movies and has the ability to sort by movie name or by date of publication
- Sorting is also applied when fetching new results after the pagination using this mehod .
Movie Screen that displays the current selected movie with a blurred background
How to see an empty Trending movies
- There is a class FakeNetworkMovieService that can be used by returning an empty list
val emptyDtoResponse: MovieDtoResponse = getEmptyResponse()
return emptyDtoResponse
and also injecting the fake service instead of the production one
The same can also be done for the Error Screen