POC of simple editor based on Automerge

README.md

poc-simple-editor #

Collaborative note editor POC built with Iced and Automerge. Syncs over WebSocket to an Automerge Repo server.

Run #

Start a sync server (defaults to port 3030):

npx @automerge/automerge-repo-sync-server

Then in separate terminals:

cargo run -- --replica alice
cargo run -- --replica bob

Notes #

  • Cmd+Z undoes local edits; Cmd+Shift+Z redoes them. History is separate for each document and lasts until the app closes, up to 100 grouped steps. Typing and repeated deletion are grouped; paste and selection replacement are separate steps. Undo preserves collaborators' inserted text.

  • Uses a vendored Automerge patch (vendor/automerge/) that fixes a cursor crash on debug builds; see vendor/README.md.

  • Tests: cargo test (3 live-sync tests need a running sync server).

  • Known gaps: no file import/export, no restore for deleted notes, no access controls. Large-document performance untested.