Kotlin MVVM architecture with Dagger2
Major libraries
- Kotlin
- Android Architecture Components (ViewModel, LiveData, Room)
- Dagger2
- Retrofit
- RxJava
- Glide
- RxFirebase
3 Major parts to config project with Dagger2:
- A Module that contains what you want it to be injected(Annotated with @Module and contains method annotated with @Provides)
- A Component which consist the modules mentioned above and also Targets that it should be injected into
- An Application class that holds reference to the Component class