You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The app was designed for educational purposes. It consists of 3 screens: Login, List of animes, Anime details.
Implementation details
High level
The app based on multi-module and clean architecture approaches. App divided on 4 layers: domain, use cases, presentation, frameworks and adapters.
Data layer
The app receives data from GraphQL API (AppolloGraphQL library was used). Room persistance library is using for caching purposes.
Presentation layer
App's presentation layer is based on the MVI architectural pattern which is implemented on RxJava2. There is Coordinator pattern with Jetpack Navigation Component under the hood for navigation purposes. UI is based on conductors library. Also we've integrated epoxy to display lists of data.
QA
Here are some unit tests examples for presentaion layer.
About
Sample project to learn MVI architectural pattern.