An application that consumes the Anime Api to display anime information and Anime Search to search for anime
#Building Your Application No special requirement is needed to run your application
Environment
- Built on A.S Hedgehog
- JDK 17
The project makes use of common Android patterns in modern Android codebases.
Project Structure The Project has 5 main modules with the following names and libraries used
-
Presentation Contains All the UI logic; Screens, ViewModel, Theme, etc.
-
Domain Contains Repository Interface and Domain Models
-
Data Contains Repository Implementation and Data Models as well as mappers from Data Sources to Data and Data to Domain
-
LocalDataSource Contains logic to fetch current user location and cache as well as entities for the database
-
RemoteDataSource Contains logic to make network calls
The Application is fully written in : Kotlin
- For testing I used the following libraries
- Tools and General setup
- Workflows
- The app has a (GitHub action workflow)[https://github.com/chepsi/anime-app/actions] to run tests and build the application once there is a PR created to the main branch
- For the Presentation Layer I used MVVM for the different screens I have a Screen, Screen State and Screen ViewModel
- I used clean architecture to Separate the different layers of the application as outlined above