An open API service indexing awesome lists of open source software.

https://github.com/victorkabata/gamex-compose

Simple android application that consumes RAWG API to display a list of games
https://github.com/victorkabata/gamex-compose

android clean-architecture-android jetpack-compose rawg-api retrofit

Last synced: 9 months ago
JSON representation

Simple android application that consumes RAWG API to display a list of games

Awesome Lists containing this project

README

          

# Gamex Compose -Work in Progress-

An android application that consumes [RAWG API](https://rawg.io/) to display a list of popular video games built using [Jetpack Compose](https://developer.android.com/jetpack/compose) and [Koin](https://insert-koin.io/) for dependency injection based on modern android techstack and multi-modular clean architecture.

# Screenshots

# Tech Stack and Open Sources Libs

- [Koin](https://insert-koin.io/) - Dependency Injection library.
- [Jetpack Components](https://developer.android.com/jetpack)
- [Jetpack Compose](https://developer.android.com/jetpack/compose)- Modern toolkit for building native UI.
- [Android KTX](https://developer.android.com/kotlin/ktx.html) - Provide concise, idiomatic Kotlin to Jetpack and Android platform APIs.
- [AndroidX](https://developer.android.com/jetpack/androidx) - Major improvement to the original Android [Support Library](https://developer.android.com/topic/libraries/support-library/index), which is no longer maintained.
- [Lifecycle](https://developer.android.com/topic/libraries/architecture/lifecycle) - Perform actions in response to a change in the lifecycle status of another component, such as activities and fragments.
- [ViewModel](https://developer.android.com/topic/libraries/architecture/viewmodel) - Designed to store and manage UI-related data in a lifecycle conscious way. The ViewModel class allows data to survive configuration changes such as screen rotations.
- [Room](https://developer.android.com/training/data-storage/room) - Provides an abstraction layer over SQLite used for offline data caching.
- [Navigation Component](https://developer.android.com/guide/navigation/navigation-getting-started)-Component that allows easier implementation of navigation from simple button clicks to more complex patterns.

- [Retrofit](https://square.github.io/retrofit/) - Type-safe http client
and supports coroutines out of the box.
- [GSON](https://github.com/square/gson) - JSON Parser,used to parse
requests on the data layer for Entities and understands Kotlin non-nullable
and default parameters.
- [OkHttp-Logging-Interceptor](https://github.com/square/okhttp/blob/master/okhttp-logging-interceptor/README.md) - Logs HTTP request and response data.
- [Coroutines](https://github.com/Kotlin/kotlinx.coroutines) - Library Support for coroutines.
- [Flow](https://developer.android.com/kotlin/flow) - Flows are built on top of coroutines and can provide multiple values. A flow is conceptually a stream of data that can be computed asynchronously.
- [Timber](https://github.com/JakeWharton/timber)-Library for easier logging.
- [Coil](https://coil-kt.github.io/coil/compose/)- Image Library from loading images from the database and caching in memory.
- [Palette API](https://developer.android.com/reference/androidx/palette/graphics/Palette) - Helper class to extract prominent colors from an image.
- [kotlinx.coroutines](https://github.com/Kotlin/kotlinx.coroutines) - Library Support for coroutines,provides runBlocking coroutine builder used in tests.