Project Overview
Marvel API is an application developed in Kotlin language for Android that consumes the Marvel API for the specific purpose of studies.
The app basically has a character listing screen with a search option and a screen to display details, comics, events and series of the selected character.
The defined architecture follows recommendations and principles from the official Android documentation and is based on the structure as shown in the image below:
Architecture & Technologies
MVVM architecture with ViewModel for repository and UI interaction
Data layer using repository + data sources
Coroutines for asynchronous programming and managing long tasks
HTTP client and API connection configuration with Retrofit
Dependency Injection with Dagger Hilt
Loading and caching images with Glide
Storing API results in local database with Room
Manually implemented result paging engine
Creation of generic auxiliary classes in order to avoid code repetitions (DRY code principles)
Basic unit tests with JUnit4
Tags
Kotlin
MVVM
LiveData
Coroutines
Repository Pattern
Retrofit
Dagger Hilt
Glide
Room
JUnit4