Skip to content

jeprubio/marvel-compose

Repository files navigation

Marvel Compose App

App created in compose that displays Marvel heroes using the marvel api

This app uses MVVM but trying to follow the Recommended app architecture at the same time.

Getting Started

The project files can be found at https://github.com/jeprubio/marvel-compose/

Easiest and simple way to download code from Github is to download the whole code in a zip file by clicking the "Code" / "Download Zip" button on the right hand side of the page.

You can then save the zip file into a convenient location on your computer and start working on it.

Another way to get the code is using git:

git clone [email protected]:jeprubio/marvel-compose.git

Prerequisites

Android studio should be installed in order to run the app.

Follow the instructions at https://developer.android.com/studio/install depending on which SO your computer is running.

How to run the application

Open the code in android studio.

Edit the local.properties file adding a value for MARVEL_PRIVATE_KEY and MARVEL_PUBLIC_KEY. E.g.:

MARVEL_PRIVATE_KEY=1234567890abcdef1234567890abcdef12345678
MARVEL_PUBLIC_KEY=abcdefghijklmnopqrstuvwxyz123456

Wait until gradle finishes and press the play button.

To run the unit tests: ./gradlew lint testDebug --continue

To run the UI tests: ./gradlew connectedDebugAndroidTest

To record the screenshots test: ./gradlew executeScreenshotTests -Precord

To execute the screenshots test: ./gradlew executeScreenshotTests

Screenshots

Characters List Character Details Comics List Comic Details

Libraries Used

  • Timber - Library to perform logging.

  • Gson - To parse from and to json (configured retrofit to use it).

  • Retrofit - To perform API calls and parse the response.

  • Dagger-Hilt - For dependency injection.

  • Coil - Loading and caching images.

Testing libraries

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages