1
0 Comments

Shipped version history today — the "oh no, someone deleted a node" problem is solved

UluP Spaces is a real-time collaborative canvas. Multiple people editing the same project live is great until someone drags a node off-canvas or deletes something by accident — and until today, that was just... gone.

Built a snapshot-based history system instead of full undo/redo (which would've been a much bigger, riskier build to get right). Daily automatic snapshots for every active project, plus a manual "save checkpoint" button for right before a risky change.

The part I'm most happy with: restoring is itself protected. Before wiping anything, the current state gets auto-saved first. So even if you restore the wrong version, you haven't lost anything — you can always go back one more step.

Technical note for anyone building something similar: node IDs get regenerated on restore rather than reused (avoids collisions with anything created elsewhere in the meantime), with a simple old-id new-id map to keep connections between nodes intact.

on September 15, 2026