Yes, Ziuq is Quiz spelled backward 😀. This is a quiz app built using Kotlin Multiplatform that runs on both Android and iOS platforms. It's a sample project to show the power of KMP. This project shares everything except UI. It runs with the server side project also written in Kotlin with Ktor.
Design inspiration by MindInventory
The app is shared between Android and iOS. The shared code is written in Kotlin and the UI is built with Compose for Android and SwiftUI for iOS. The shared module is mainly built with clean architecture.
- shared:
- contains all the shared code between the platforms including View Models, networking, WebSockets, Strings and Image Resources
- android:
- contains the android app
- ios:
- contains the ios app
- User authentication
- Solo Quiz
- Live Quiz with answers tracking
- Clone the repository.
- Open the project in Android Studio.
- Replace LOCALHOST(Extensions.kt) with server URL.
- Build and run the app on an Android device or emulator.
- Open the project in Xcode.
- Build and run the app on an iOS device or simulator.
- Kotlin Multiplatform - The Kotlin Multiplatform technology is designed to simplify the development of cross-platform projects.
- SQLDelight - SQLDelight is an open-source library developed by Cash App (formerly Square, Inc.) for working with SQL databases in Kotlin-based Android and multi-platform applications.
- Multiplatform Settings - A Kotlin Multiplatform library for saving simple key-value data.
- Koin - The pragmatic Kotlin & Kotlin Multiplatform Dependency Injection framework.
- Kotlinx-datetime - KotlinX multiplatform date/time library.
- Kotlinx-serilization - Kotlin multiplatform / multi-format serialization.
- KMM-ViewModel - Library to share Kotlin ViewModels with SwiftUI
- Moko Resources - Resources access for mobile (android & ios) Kotlin Multiplatform development
This project is licensed under the MIT License.