// the find
ekzhang/rustpad
Efficient and minimal collaborative code editor, self-hosted, no database required
Rustpad is a self-hosted collaborative code editor built on operational transformation, with a Rust/warp backend and a Monaco (VS Code editor) frontend. Documents live in memory and die after 24 hours of inactivity unless you point it at a SQLite file. It's for developers who want a lightweight pastebin-with-realtime-collab that they fully control.
OT logic is compiled to WASM and runs in the browser, so the server is just a relay — the correctness-critical code is shared between client and server rather than duplicated. The Docker image is 6 MB, which is genuinely small for something that ships a full Monaco editor. Integration test suite covers concurrency, persistence, and unicode edge cases — not just happy-path. SQLite optional persistence is a practical middle ground: no database required by default, but you can opt in without standing up Postgres.
Last meaningful commit was early 2025 and the project looks dormant — warp is itself largely unmaintained, so dependency rot is a real concern if you build on this. Documents are scoped to an in-memory server with no access control whatsoever: anyone with the URL can read and edit, so this is a hard no for anything beyond throwaway collaboration. No auth, no rooms, no history, no export — the feature surface stopped at the proof-of-concept stage. The wasm-pack build step adds a non-trivial onboarding hump; the dev setup requires Rust, wasm-pack, and Node in sync, which breaks more often than it should.