This project is the implementation of how one can adopt the Kmp (Kotlin multiplatform) for building Android and ios apps. I rebuilt Philipp Lackner's doodle king api for backend. I have used the Compose Multiplatform to build the UI of both platforms. If you are new to Compose multiplatform please go through: https://www.jetbrains.com/lp/compose-multiplatform/
To build the project you need some basic understanding of how the KMP projects are built.
For that, you have look at: https://kotlinlang.org/docs/multiplatform-mobile-getting-started.html
To build the project first you need to clone and run Doodle king Ktor api
After that find the file local.properties
file in the root folder of the KMM project and add below key value pairs.
BASE_URL = http://[IP_ADDRESS]:7000/
WEB_SOCKET_BASE_URL = ws://[IP_ADDRESS]:7000/
doodle_king.mp4
- Bug fixes 😅.
- Some more UI improvement.
- Add Authentication.
- Password for joining room.
- Improving overall Architecture.
- Kotlin - First class and official programming language for Android development.
- Jetpack Compose - Android’s modern toolkit for building native UI.
- Jetbrain's compose multiplatform - UI development for Android, iOS, Web, Desktop and many more.
- Kotlin multiplatform - Kotlin-based development for frontend applications for Android,iOS, Web and desktop.
- Voyager - Navigation library for jetpack compose and compose multiplatform.
- Ktor) - A kotlin based networking library.
- Kotlinx Serialization - Serialization library which can be used in KMM projects.
- Koin - Libray for dependency injection.
- Multiplatform Setting - Key-Value pair local storage.
- Build Konfig - Libray to generate build config object. I used it to store env variables.
- Napier - Library for logging.
For more information about used dependencies, see this file.
If you have any questions regarding the codebase, or you would like to discuss anything about the project hit/connect me up on :