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 9e8a138a2f
fix typo ChatViewController (#2768)
2 years ago
..
.run Rename xcode projects to iosApp and remove ios run configurations (#2629) 2 years ago
androidApp Move examples to V2 Source Set Layout (#2765) 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 fix typo ChatViewController (#2768) 2 years ago
jsApp Move chat-mpp to KMM project structure (#2620) 2 years ago
shared fix typo ChatViewController (#2768) 2 years ago
.gitignore Rename xcode projects to iosApp and remove ios run configurations (#2629) 2 years ago
README.md fix typo ChatViewController (#2768) 2 years ago
build.gradle.kts Move chat-mpp to KMM project structure (#2620) 2 years ago
gradle.properties Move examples to V2 Source Set Layout (#2765) 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 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