/GithubApp

App build with JetPack Paging along with Retrofit, Coroutines, Koin, DataBinding, MVVM, Coil and Moshi

Primary LanguageKotlinApache License 2.0Apache-2.0

GithubApp

Github Action CI

A small sample app majorily build to learn and test the performance of latest Koin dependency Injection along side with latest Kotlin Corooutines for network request and Coil(Kotlin-first image loading library).

Languages, libraries and tools used

Future Roadmap Features

  • MVI Architecture
  • Koin UnitTest
  • Room with Koin and Kotlin Corooutines

Demo

NAndroid

Koin vs Dagger

Koin Dagger
Written in Kotlin Written in Java
Errors are fired at runtime Errors can be found at compile time
Do not use annotations Use annotations
Dedicated library to work with ViewModel (Android Jetpack) Not interaction with ViewModel

APK Build with Koin dependency Injection

Apk Analyser

APK Build with Dagger2 dependency Injection

Apk Analyser

Conclusions

Dagger and Koin are great dependency injection frameworks. Dagger has the advantage of being in the market for a longer time than Koin. If you're a Kotlin developer, it will be easier to start with Koin instead of Dagger. Although, Dagger has more information in blogs, articles, and questions on Stack Overflow. Finally, Koin is a great alternative for small and medium- sized apps as Dagger is older and more mature framework when it comes to big projects with a distributed team.

Prerequisites

  • Android Studio 3.4
  • Gradle version 3.4.2
  • Kotlin version 1.3.50
  • Android Device with USB Debugging Enabled

Built With

Thanks for reading this repo. Be sure to click ★ below to recommend this repo if you found it helpful. It means a lot to me.

For more about programming, follow me on Medium

Also, Let’s become friends on Linkedin