Awesome Open Source
Awesome Open Source

The fastest way to call a taxi in Banja Luka



Project characteristics 🚀

This project brings to the table set of best practices, tools, and solutions:

  • 100% Kotlin
  • Modern architecture (Clean Architecture, Multi-Module setup, Model-View-ViewModel)
  • Android Jetpack
  • Single-activity architecture, using the Navigation component
  • CI pipeline (Bitrise)
  • Testing (Using Jacoco for test coverage)
  • Dependency Injection
  • Material Design (Dark theme)

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - Kotlin's way of way of writing asynchronous, non-blocking code
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps
    • LiveData - Data objects that notify views when the underlying data changes
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes
    • DataBinding - Allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically
    • WorkManager - Makes it easy to schedule deferrable, asynchronous tasks that are expected to run even if the app exits or device restarts
    • Room - SQLite object mapping library
  • Material Components for Android - Modular and customizable Material Design UI components for Android
  • Navigation Component - Helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer
  • Koin - Dependency Injection Framework
  • Retrofit - A type-safe HTTP client for Android and Java
  • Google Analytics - Free app measurement solution that provides insight on app usage and user engagement
  • Firebase Crashlytics - Lightweight, realtime crash reporter that helps you track, prioritize, and fix stability issues that erode your app quality

Tested With 🔬

  • JUnit 4 - Simple framework to write repeatable tests
  • mockito - Most popular Mocking framework for unit tests
  • mockito-kotlin - Provides helper functions to work with Mockito in Kotlin
  • Truth - Makes your test assertions and failure messages more readable
  • Robolectric - Runs tests in a simulated Android environment inside a JVM without the overhead of an emulator


Get it on Google Play

Find this repository useful? ❤️

Support it by joining stargazers for this repository. ⭐️
And follow me for my next creations! 🤩


 Copyright 2020 Vladimir Jovanović

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 See the License for the specific language governing permissions and
 limitations under the License.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
android (6,465
kotlin (3,768
material (390
android-app (246
android-development (224
android-architecture (106
mvvm-android (52