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 327cdac3e5
Update experimental examples to dev1004 (#2954)
2 years ago
..
.run Rename xcode projects to iosApp and remove ios run configurations (#2629) 2 years ago
androidApp Arrange samples to the latest multiplatform template (#2835) 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 Arrange samples to the latest multiplatform template (#2835) 2 years ago
jsApp Move chat-mpp to KMM project structure (#2620) 2 years ago
shared Arrange samples to the latest multiplatform template (#2835) 2 years ago
.gitignore Rename xcode projects to iosApp and remove ios run configurations (#2629) 2 years ago
README.md Arrange samples to the latest multiplatform template (#2835) 2 years ago
build.gradle.kts Move chat-mpp to KMM project structure (#2620) 2 years ago
gradle.properties Update experimental examples to dev1004 (#2954) 2 years ago
gradlew experimental chat example (#2148) 2 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

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 helps to add Compose inside SwiftUI hierarchy.

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 TEAM_ID value in iosApp/Configuration/Config.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