Skip to content

🕹️ A Gaming Catalog App using Jetpack libs and MVVM arch. Data provided by RAWG API

Notifications You must be signed in to change notification settings

lucasrafagnin/gaming-catalog-app

Repository files navigation

Gaming Catalog


Google

A Gaming Catalog 🎮 app showcase using a modern Android tech-stacks and MVVM architecture.

Cover

Tech Stack 🛠

  • Minimum SDK API level: 21
  • Kotlin - Official programming language for Android development.
  • Dagger Hilt - Dependency Injection library for Android
  • Coroutines - For asynchronous stuff and more.
  • Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.
  • LiveData - Data objects that notify views when the underlying database changes.
  • ViewModel - Manages UI data and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
  • ViewBinding - Bind UI components from layouts to data sources in app using a declarative format rather than programmatically.
  • Retrofit - A type-safe HTTP client for Android.
  • Room - SQLite object mapping library.
  • Moshi - A modern JSON library for Kotlin and Java.
  • Moshi Converter - A Converter which uses Moshi for serialization to and from JSON.
  • Navigation - A library that helps navigation between fragments
  • Coil-kt - An image loading library for Android backed by Kotlin Coroutines.
  • Gradle Kotlin DSL - For writing Gradle build scripts using Kotlin.
  • JUnit, Mockito and Mockk for unit tests

Quality 💅

  • Ktlin - Kotlin linter
  • Renovate - Automated dependency updates.
  • Codacy - Automated code reviews in commits and pull requests

API

This app uses the RAWG.io API to fetch games data.

Architecture 🏗️

MVVM-with-Kotlin-Coroutines-and-Retrofit

Find this repository useful? ⭐

Follow me for my next creations.