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).
- Kotlin
 - Kotlin Corooutines
 - Koin
 - Coil
 - Moshi
 - Android JetPack Paging
 - Android Architecture Components
 - Mockito
 
- MVI Architecture
 - Koin UnitTest
 - Room with Koin and Kotlin Corooutines
 
| 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 | 
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.
- Android Studio 3.4
 - Gradle version 3.4.2
 - Kotlin version 1.3.50
 - Android Device with USB Debugging Enabled
 
- Android Studio - The Official IDE for Android
 - Android JetPack Paging library - Android JetPack Paging library
 - Gradle - Build tool for Android Studio
 
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


