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