This repository contains a sample project in Kotlin to demonstrate AndroidX, MVVM, Coroutines, Hilt, Room, Data Binding, View Binding, Retrofit, Moshi, Leak Canary and Repository pattern
database: Models to work with Room database
di: Hilt classes to work with Network and Database
domain: Models which are used by UI
network: Services and network models
repository: Contains all repositories
util: Utility class
views: View classes along with their corresponding ViewModel.
Hilt: https://developer.android.com/training/dependency-injection/hilt-android
MVVM Architecture : https://developer.android.com/jetpack/guide
Coroutines: https://developer.android.com/kotlin/coroutines
Data Binding: https://developer.android.com/topic/libraries/data-binding
View Binding: https://developer.android.com/topic/libraries/view-binding
Leak Canary: https://square.github.io/leakcanary/
Retrofit: https://square.github.io/retrofit/
RecyclerView Codelab: https://developer.android.com/codelabs/kotlin-android-training-recyclerview-fundamentals
Repository Codelab: https://developer.android.com/codelabs/kotlin-android-training-repository
Room and Coroutines Codelab: https://developer.android.com/codelabs/kotlin-android-training-room-database
Hilt Codelab: https://developer.android.com/codelabs/android-hilt