This project focuses on the following concepts ->
-
MVVM Clean Architecture ->
a. Presentation Layer (View + ViewModel)
b. Domain Layer (Use Cases + Repository(Interface))
c. Data Layer (Repository(Implementation) + Data Sources( Local, Remote and Cache )) -
Dagger 2 ->
a. Component providing Singleton scoped dependencies.
b. SubComponent providing Custom Scope scoped dependencies to avoid memory leaks.
c. Implemented Field Injection to recieve dependencies. -
Kotlin Coroutines ->
a. Implemented to perform I/O operations more effectively on background threads. -
Retrofit
-
Room Data persistence Library
-
Live Data
-
Data Binding
-
RecyclerView
This app displays a list of most popular Movies, Tv Shows and Actors.
The application uses TMDB APIs to fetch the list for the same.