The following are the features of the application;
-It should have bottom navigation.
-It should have a page that pulls the top 25 animes and lists them. The link to the API is; anime. Further API Documentation can be found here; Jikan REST API v4 Docs.
-The relevant data should be stored on the app using SQLite.
-A user should be able to refresh the page and the new data should overwrite the stored one.
-It should have another page that allows for uploading of images to the following URL search. The response should be displayed below the image after the API call is complete. Only display relevant information such as title and episode. API documentation can be found here; API Docs
-Kotlin- a cross-platform, statically typed, general-purpose programming language with type inference.
-Coroutines - perform background operations.
-KOIN - a pragmatic lightweight dependency injection framework.
-ROOM - persistence library providing an abstraction over SQL .
Jetpack -
-Retrofit - A type-safe HTTP client for Android.
The app contains these packages:
data-remote
Handles data interacting with the network and is later serverd up to the presentation layer through domain object
data-local
Handles persistence of object with Room ORM from.This module is responsible for handling all local related logic and serves up data to and from the presentation layer through domain objects.
With this separation we can easily swap in new or replace the database being used without causeing major ripples across the codebase.
Gets data from api and room and distributes it to the rest of the app
Koin handles dependency injection on components making it easier to reuse
This package contains utility functions like networkresult which are used throughtout the application
contains views that are shown to the user
Clone the repo and run on emulator or phone or download the apk file