Menu

1 / 2

GitHub - crabbuild/prolly: Prolly is a content-addressed ordered map built on prolly trees. It gives applications immutable snapshots, cheap branching, structural sharing, efficient diffs and merges, sync primitives, and verifiable key/range proofs.

Hacker News·2 months ago
#tStYhWP1
#github#rust#merkle#article#ama
Reading 0:00
15s threshold

Prolly publishes the prolly Rust library crate. Users depend on the package as prolly-map , while code imports stay concise: use prolly::{Config, Prolly}; .

The crate provides content-addressed prolly tree storage primitives: an immutable, ordered key-value index over byte keys and byte values, with stable content-derived structure for efficient structural sharing, diff, merge, and bulk loading.

At the API boundary, a Tree is a small persistent handle:

root: Option<Cid> points at the content-addressed root node.

config: Config records the chunking and encoding parameters used by the tree.

The actual nodes live in a pluggable Store . Operations clone and rewrite only the affected path or subtrees, write new content-addressed nodes, and return a new Tree handle.

All storage-backed tree work is implemented once by a runtime-neutral, async-first engine. AsyncProlly<S: AsyncStore> uses it directly; Prolly<S: Store> drives the same complete operation through an inline ready-only adapter.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.