Example of application using Kotlin Multiplatform and MVVM pattern for both platforms (Android & iOS). To achieve it the libraries used are:
- moko-mvvm: This is a Kotlin Multiplatform library that provides architecture components of Model-View-ViewModel for UI applications. Components are lifecycle-aware on Android.
- KTOR: to make HTTP requests
- Serialization: to De/Serializing JSON
- Kodein-DI: Dependency injector
- kotlinx.coroutines: Library support for Kotlin coroutines with multiplatform support
- SQLDelight: SQLDelight generates typesafe kotlin APIs from your SQL statements.
More detail in this post on ProAndroidDev: here
- Added unitTest for GitHubRepository