Source code to start an Android application in VIPER clean architecture. The source code contains different layers of VIPER architecture which is demonstrated through movie app.
There are four packages:
- data - The package contains data stores i.e.
MoviesDataStore
which is implemented byRemoteMoviesDataStore
andLocalMoviesDataStore
. These data stores provide movies data toMovieRepository
which provides movies data to domain layer. - domain - This is the core logical layer in which main part is interactors(also called use cases).
GetPopularMovies
is the interactor which gets data fromMovieRepository
and provide it to presentation layer. - presentation - It contains
MoviesPresenter
andMoviesView
.MoviesListActivity
implementsMoviesView
.MoviesPresenter
gets movies list fromGetPopularMovies
interactor.MoviesRounter
handles navigations from movies list. - common - It contains common base classes and constants.
- RxAndroid
- Retrofit
- Dagger2