JeTaxi

The JeTaxi application is sample based on CleanArchitecture on MVVM.
Fetching data from the network via repository pattern and showing them by Android Jetpack Libraries

animated

What Does JeTaxi 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)
  • 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.
  • Google-Map create real-world, real-time experiences with the latest Maps, Routes, and Places features from Google Maps Platform.
  • Screet Gradle Plugin a Gradle plugin for providing your secrets securely to your Android project.
  • Chucker is inspection of HTTP(S) requests/responses
  • MockK is a test framework.
  • Truth makes your test assertions and failure messages more readable.
  • MockWebServer A scriptable web server for testing HTTP clients

Architecture

Note

You are going to need to get an API key so that you can show maps properly.
Please follow the instructions and include it in the local.properties file as follows:

KEY={insert_the_key_here}

When restricting the Key to Android apps, use com.tlgbltcn.jetaxi as package name, and
C2:C6:50:35:30:03:7B:05:62:34:1E:C2:48:3F:73:81:2B:68:C2:7D as SHA-1 certificate fingerprint.

To-Do in Future

  • More test case.

GitHub

View Github