GithubApp
App build with JetPack Paging along with Retrofit, Coroutines, Koin, DataBinding, MVVM, Coil and Moshi
Install / Use
/learn @yash786agg/GithubAppREADME
GithubApp
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
- Kotlin
- Kotlin Corooutines
- Koin
- Coil
- Moshi
- Android JetPack Paging
- Android Architecture Components
- Mockito
Future Roadmap Features
- MVI Architecture
- Koin UnitTest
- Room with Koin and Kotlin Corooutines
Demo

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 Build with Dagger2 dependency Injection

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
- 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
