This is a Compose Multiplatform project targeting Android, iOS, Web, Desktop.
- check your system with KDoctor
- install JDK 17 or higher on your machine
- add
local.propertiesfile to the project root and set a path to Android SDK there
To run the application on android device/emulator:
- open project in Android Studio and run imported android run configuration
To build the application bundle:
- run
./gradlew :composeApp:assembleDebug - find
.apkfile incomposeApp/build/outputs/apk/debug/composeApp-debug.apkRun android UI tests on the connected device:./gradlew :composeApp:connectedDebugAndroidTest
Run the desktop application: ./gradlew :composeApp:run
Run desktop UI tests: ./gradlew :composeApp:jvmTest
To run the application on iPhone device/simulator:
- Open
iosApp/iosApp.xcprojectin Xcode and run standard configuration - Or use Kotlin Multiplatform Mobile plugin for Android Studio
Run iOS simulator UI tests:
./gradlew :composeApp:iosSimulatorArm64Test
Run the browser application: ./gradlew :composeApp:jsBrowserDevelopmentRun --continue
Run browser UI tests: ./gradlew :composeApp:jsBrowserTest
Learn more about Kotlin Multiplatform, Compose Multiplatform, Kotlin/Wasm…
%%{
init: {
'theme': 'neutral'
}
}%%
flowchart TB
Repository <--> ViewModel
View --> Intent
Intent -->|Interprete| Action
State -->|Render| View
subgraph ViewModel
Action -->|Process| Result
Result -->|Reduce| State
end