/VideoGameAppCompose

Primary LanguageKotlinMIT LicenseMIT

Video Game App Compose

This Video Game App showcases modern Android development with Kotlin, Jetpack Compose, Hilt, Coroutines, Flow, and Jetpack (Room, ViewModel) using Material Design principles and based on the MVVM architecture. It leverages the RAWG API to offer detailed and current information on a wide range of video games.

Technologies

  • Kotlin: Programming language for Android development
  • Coroutines: Facilitates asynchronous programming and handling background tasks seamlessly.
  • Flow: Manages and observes data streams in a reactive manner.
  • Hilt: Simplifies dependency injection in Android applications.
  • Navigation: Facilitates screen navigation, complemented by Hilt Navigation Compose for dependency injection.
  • Room: Handles local database operations with ease.
  • Retrofit: Used for making network requests and retrieving data from APIs efficiently.
  • DataStore: Replaces SharedPreferences for storing key-value pairs, offering a modern and robust solution.
  • Coil: An image loading library for Android that is fast and easy to use.
  • Testing:
    • Turbine: Provides tools for testing Flow.
    • Mockk: Enables mocking in tests for better isolation.
    • Truth: Simplifies assertion and verification in tests.

Architecture

clean_architecture

Screens

1 2 3 4

0f265a35-5a7e-48f6-bc05-39ad8c33584c-ezgif.com-video-speed.mp4