Experiments 03

CRDT Editor

Open this page in two tabs and type in either one. Changes sync between them. You can keep editing while disconnected; queued edits sync when the connection returns.

Rust · WASM · RGA · WebSocket · SurrealDBView source 

loading engine…

Notes on how it works

Notes

WASM CRDT

The RGA runs in Rust compiled to WebAssembly. Each op returns a JSON message ready to broadcast.

Sync server

An Axum WebSocket server persists ops to SurrealDB and rebroadcasts them to every connected tab.

Offline first

If the server is unreachable the editor keeps working. Ops queue locally and flush when the connection resumes.