Skip to content

01 — Local truth

Strand

A signed, append-only log per writer. Every event is hashed into a Merkle history that any peer can verify offline. No global consensus. No fork resolution. The participant's log is their truth, and replicas converge by replaying.

A closer lookA history that keeps its author.

Append a signed record. The earlier records remain, and the next contribution extends the thread.

  1. 01Write a finding
  2. 02Sign and append
  3. 03Keep the history
01 — Concepts
01

Single-writer log per participant. No global ordering.

02

Each event is hashed and signed; verifiable offline.

03

Merkle history + bitfield replication — sparse, resumable.

04

Storage backends are pluggable (in-memory, RocksDB, custom).

02 — Code

A handful of lines.

use strand::{Strand, StrandBuilder};

let mut strand = StrandBuilder::new("alice")
    .keypair(keypair)
    .open(".weave/alice").await?;

strand.append(b"hello, peers").await?;
let proof = strand.proof_for(0).await?;
assert!(proof.verify());