kmp-bridge

One Kotlin core. Five host bindings. Watch them agree, or watch one drift.

core
contract
commands

Every panel below holds its own runtime instance of the same Kotlin Multiplatform core, compiled to JavaScript and running in this tab. On a device, the panel is drawn by SwiftUI, Compose, Flutter or React Native and the core arrives as an XCFramework, a JVM artifact or a native library. The code answering the question is identical. The apps that prove it are in samples/.

Host input

Whatever you type here is sent to all five runtimes at once.

Lifecycle

Every event bumps the generation. Anything older is stale by definition.

Try to break it

These are the failures a four-implementation product finds in production.

Waiting for the first command…

The bridge

One command in, one envelope out. This is the entire surface a host binding has to cover.