SpendSense is Kotlin Multiplatform project with 99% shared code, built with Compose multiplatform,
Coroutines, Flow, Koin, Ktor, SqlDelight, that was developed step by step in the context of the
Kotlin Multiplatform course.
The project's code can be run on Android, iOS, macOS, Windows, Linux. Strapi CMS is used for data
synchronization between devices.
- Kotlin based, Coroutines + Flow for asynchronous.
- Kotlin Serialization: Kotlin multiplatform / multi-format serialization.
- Compose multiplatform: a modern UI framework for Kotlin.
- Ktor: for making network requests.
- SqlDelight: for caching data.
- Koin: a pragmatic lightweight dependency injection framework.
- Architecture
- MVVM Architecture
- Material 3: Material 3 components.
To start the synchronization server, it's necessary
to install all dependencies for Strapi, then navigate to the server directory and execute the command yarn install.
After that, you can start the server from this directory using the command yarn develop for
development mode or yarn start for production mode.