You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
dima.avdeev a1cb760b7c
Compose inside SwiftUI example (#2755)
2 years ago
..
.run Rename xcode projects to iosApp and remove ios run configurations (#2629) 2 years ago
androidApp Move chat-mpp to KMM project structure (#2620) 2 years ago
desktopApp Move chat-mpp to KMM project structure (#2620) 2 years ago
gradle/wrapper update gradle wrapper 7.5.1 (#2352) 2 years ago
iosApp Compose inside SwiftUI example (#2755) 2 years ago
jsApp Move chat-mpp to KMM project structure (#2620) 2 years ago
shared Compose inside SwiftUI example (#2755) 2 years ago
.gitignore Rename xcode projects to iosApp and remove ios run configurations (#2629) 2 years ago
README.md Compose inside SwiftUI example (#2755) 2 years ago
build.gradle.kts Move chat-mpp to KMM project structure (#2620) 2 years ago
gradle.properties Compose inside SwiftUI example (#2755) 2 years ago
gradlew experimental chat example (#2148) 3 years ago
run-configurations.png Move chat-mpp to KMM project structure (#2620) 2 years ago
settings.gradle.kts Move chat-mpp to KMM project structure (#2620) 2 years ago

README.md

Chat example app

Example can run on Android, iOS, desktop or in a browser.

Prerequisites: to run on iOS and Android, you should have "Kotlin Multiplatform Mobile" plugin installed either in Android Studio or in AppCode with installed CocoaPods.

How to run

Choose a run configuration for an appropriate target in IDE and run it.

run-configurations.png

To run on iOS device, please correct iosApp/Configuration/TeamId.xcconfig with your Apple Team ID. Alternatively, you may setup signing within XCode opening iosApp/iosApp.xcworkspace and then using "Signing & Capabilities" tab of iosApp target.

Then choose iosApp configuration in IDE and run it.

Run on desktop via Gradle

./gradlew desktopApp:run

Run JS in browser with WebAssembly Skia via Gradle

./gradlew jsApp:jsBrowserDevelopmentRun

Run MacOS via Gradle:

  • on Intel CPU: ./gradlew :shared:runDebugExecutableMacosX64
  • on Apple Silicon: ./gradlew :shared:runDebugExecutableMacosArm64

SwiftUI interop

This example shows how you can set up an interop between SwiftUI and Compose. Pay attention to the file ComposeViewControllerToSwiftUI.swift. This file help to add Compose inside SwiftUI hierarchy.