This is a Kotlin Multiplatform template targeting Android, iOS, Desktop and Web.
Template follows MVVM with CLEAN architecture. Example Repository, RepositoryImpl, UseCases, HttpClient added.
This has base for the following dependencies,
- Navigation: Voyager Navigation
- Ktor client added: Common, Android and Desktop.
- Coroutines: Common
- Serialization (For passing data between composables): Common
- Logging: Kermit
- Image Loader: Kamel
- Dependency Injection (Common, Android): Koin
-
/composeAppis for code that will be shared across your Compose Multiplatform applications. It contains several subfolders:commonMainis for code that’s common for all targets.- Other folders are for Kotlin code that will be compiled for only the platform indicated in the folder name.
For example, if you want to use Apple’s CoreCrypto for the iOS part of your Kotlin app,
iosMainwould be the right folder for such calls.
-
/iosAppcontains iOS applications. Even if you’re sharing your UI with Compose Multiplatform