A Kotlin Multiplatform App targeting Android, and iOS. The app displays Rick and Morty show characters.
- MVI architecture (Model - View - Intent) - For Unidirectional data flow.
- Repository pattern - To ensure clean separation of concerns and improve maintainability of the application
- Kotlin Multiplatform: A technology that enables sharing code across multiple platforms
- Compose Multiplatform: Modern Declarative UI framework for sharing UI across multiple platforms
- Ktor: A framework for creating asynchronous server-side and client-side applications
- Kotlin Coroutines and Flow: For asynchronous operation
- Koin: A Kotlin Dependency Injection framework
- Lifecycle Components
- Kotlinx Serialization: For serializing and deserialization data in Kotlin
- Kamel: For loading, caching, decoding and displaying images in Compose Multiplatform
- Napier: A logging library for Kotlin multiplatform
- Compose Navigation
- Multiplatform-paging
To run the app on Android:
- Import the project into Android studio
- In the list of configurations, select composeApp
- Choose either an emulator or a device and click run
To run the app on ios:
- open the iosApp directory in Xcode and run the standard configurations