Skip to content

tlgbltcn/JeTrivia

Repository files navigation

JeTrivia

🚧   In Progress   🚧

The JeTrivia application is sample based on MVVM architecture that fetches data from the network via repository pattern and save them to local data source.

animated

What Does JeTrivia consist of?

  • Kotlin
  • Coroutines is used to asynchronous and non-blocking programming.
  • Flow is asynchronous version of a Sequence.
  • Compose is a modern toolkit for building UI. (Single Activity and No Fragment)
  • Navigation is a navigation component that provides support for Jetpack Compose applications.
  • Room for database and caching.
  • Hilt is dependency injection based on Dagger 2.
  • Accompanist is a collection of extension libraries for Jetpack Compose applications.
  • Retrofit2 REST APIs.
  • OkHttp3 is used to implementing interceptor, logging web server.
  • kotlinx.serialization is used to process of converting data used by an application to a format that can be transferred over a network or stored in a database or a file.
  • Chucker is inspection of HTTP(S) requests/responses
  • MockK is a test framework.
  • Truth makes your test assertions and failure messages more readable.

Architecture

tolga-bolatcan

To-Do in Future

  • MVVM with MVI
  • Component based UI refactor.
  • Theme Management with DataStore
  • More test case.


Thanks for the OpenTriviaDatabase.