Teleport without a server
Last reviewed: July 2026.
The playground can drive a live UI onto a second device over a direct WebRTC data channel with no backend at all – not even a signalling server. The two devices exchange their WebRTC offer/answer out-of-band (a QR code, or copy-paste), and from then on the UI travels peer-to-peer: the canonical wire tree first, then each edit as a surgical tree operation. The receiver re-renders natively – what crosses the wire is ~2KB of typed, inspectable, diffable data, not pixels and not a video stream.
What we claim – and what we don't
Each ingredient here has honourable prior art, and we claim none of it:
- Signalling-server-free WebRTC via manually exchanged offer/answer is a decade-old technique – public demos date to 2013–2014, and QR-compressed signalling has been shipped by others.
- UI as data, natively re-rendered is mature production practice – server-driven UI systems shipped it at scale years ago.
- AI-generated declarative UI with streamed incremental updates is now an open standard (see Records, not just renders).
What we have not found shipping anywhere else is the combination: to our knowledge, this is the first system where an AI-generated UI teleports live between devices as typed, canonical data over a direct peer channel with no backend, no account, and no signalling server. Every generative-UI system we surveyed is server- or agent-mediated or purely local; every device-continuity system either bootstraps through a vendor cloud, works only in physical proximity, or does not move UI at all. If you know of a counter-example, we would genuinely like to hear about it.
The limitation, up front
"No server" has one honest boundary: NAT traversal. Pairing uses a single public STUN endpoint (handshake only; no UI data ever touches it), and STUN hole-punching fails when both peers sit behind symmetric NATs, as on some corporate and cellular networks. Industry estimates put the affected share of peer connections at roughly 8–30%. The usual fix is a TURN relay, which is a server – and relay credentials cannot ride safely in a public QR code – so we currently accept the gap rather than reintroduce infrastructure. If your pairing fails on a locked-down network, that is why.
Why it works at all
The reason this feature is small (one transport seam, no protocol invention) is the thesis of the whole language: the interface is data with a canonical byte encoding. A ~2KB tree plus tree-ops fits in any channel – a data channel, a QR code, a URL fragment. When the artefact is portable by construction, "teleport" stops being a feature and becomes a transport detail.