Why NodalMerge
NodalMerge is built for products that need low-latency collaboration without giving up deterministic correctness. If your team is building editors, operational consoles, multiplayer workflows, or AI-assisted workspaces, NodalMerge gives you a replayable state graph instead of fragile last-write snapshots.Where it fits best
NodalMerge is a strong fit when you need:- Multi-writer collaboration with frequent concurrent edits
- Local-first UX with offline writes and later convergence
- Replayable history for debugging, audit, and deterministic recovery
- Fine-grained room and path capability controls
- Simple request/response CRUD apps with no collaboration
- Workloads where eventual consistency is unacceptable
- Teams that do not want to run stateful sync infrastructure
Decision shortcut
Use this fast rule:- If your product requires collaborative correctness, offline-first UX, and replayable trust, NodalMerge is likely a strong fit.
- If your product is primarily single-writer CRUD with no collaboration pressure, a simpler real-time stack is often faster to ship.
Core advantages
Deterministic convergence
NodalMerge resolves identical history into identical state on every peer. You reconcile history, not ad-hoc snapshots. This makes divergence easier to reason about and test.Local-first by default
Clients can accept writes locally, then sync and merge when connectivity returns. This improves perceived performance and resilience in unstable networks.Replayable DAG history
Transactions form a directed acyclic graph. You can:- Reconstruct historical states
- Debug merge outcomes from first principles
- Verify behavior across runtime and host implementations
Speculative and authoritative lanes
You can separate optimistic intent from canonical accepted state, then converge both lanes in one model. This is useful when policy validation or server-side simulation decides final outcomes.Capability-scoped access
Room tokens can encode path-scoped capabilities such asread:world/** and write:intent/**.
That lets you keep collaboration broad while still controlling who can mutate sensitive namespaces.
How it compares to simpler sync models
Many systems replicate a mutable document snapshot and patch conflicts heuristically. NodalMerge instead persists immutable operations in a graph, then deterministically materializes state. You trade some conceptual complexity for stronger replay, audit, and merge guarantees.Typical adoption path
Most teams adopt in stages:- Start with one room and core map/text/list workflows
- Introduce intent/canonical separation for sensitive flows
- Add capability-scoped governance where needed
- Add operator lifecycle and replay tooling before scale
Operational posture
Running NodalMerge in production means planning for:- Room lifecycle and persistence policy
- Blob storage and garbage collection windows
- Metrics, SLOs, and replay tooling for incident response
- Token minting and capability policy management
Decision checklist
Choose NodalMerge when most answers are “yes”:- Do you need concurrent multi-user editing?
- Do you need offline-capable writes?
- Do you need deterministic replay for debugging and trust?
- Do you need policy-scoped collaboration across namespaces?
- Do you expect product complexity to grow over time?
Next steps
- Run
quickstartfor an end-to-end baseline - Read
architecture/overviewfor system-level understanding - Read
operators/server-setupfor production posture - Review
operators/security-and-authfor deployment hardening - Review
api-reference/websocket-commandsfor command-level integration