Files
modules/state-crdts/hyper-p2p-crdt-or-map
Raven ScottandCursor 38e30b63a1 Expand network, encoding, observability, routing, supercomputer, and CRDT APIs.
Adds snapshot() and batch helpers across network discovery/stack/transport, encoding-wire, observability, routing-advanced, supercomputer, state-crdts, scheduling-queues, and session-bridge modules.

Co-authored-by: Cursor <[email protected]>
2026-05-21 04:03:45 -04:00
..
2026-05-20 23:36:32 -04:00
2026-05-20 23:36:32 -04:00
2026-05-21 02:00:00 -04:00
2026-05-21 00:07:44 -04:00
2026-05-21 02:00:00 -04:00
2026-05-20 23:36:32 -04:00

hyper-p2p-crdt-or-map

Observed-remove map CRDT: LWW per key with explicit remove() tombstones, replicated via gossip.

Category: State CRDTs · Protocol: crdt-or-map/v1

When to use

Shared maps where deletes must converge (tags, settings keys, room metadata).

When not to use

Simple scalar registers without key removal semantics (use LWW register). Grow-only membership (use G-Set / 2P-Set).

Quick start

const { HyperP2PCrdtOrMap } = require('hyper-p2p-crdt-or-map')
const map = new HyperP2PCrdtOrMap({ topic: process.argv[2] })
await map.ready()
map.set('room', { name: 'lobby' })
map.remove('room')
await map.close()

Docs

docs/api.md · docs/architecture.md

Test

npm install && npm test · bare examples/basic.js [topic]