Weave
Comparison

Weave & Nostr.

Nostr and Weave's WOVEN both define "signed events transmitted between peers." Nostr does it through relays; Weave does it through a Rust workspace with a fuller application stack.

DimensionNostrWeave
TopologyClients + public relaysDirect peer-to-peer over weave-swarm + DHT
Event modelKinds + tagsWOVEN events + spaces + filters + references
IdentityBare keypairs (npub/nsec)Identity adapters: Ed25519, Did, custom
Storage primitiveRelays cache eventsTrace (per-writer signed log) + Lens (views)
Agent surfacesNot first-classFirst-class (/llms.txt, /skill.md, /.well-known/agent.json)
Out-of-app primitivesLimited (Blossom for media)Locus drives, Nexus convergence, Trace Vault
Implementation languageMany — JS, Rust, Go, SwiftRust workspace; bindings can be added

Pick Nostr

Pick Nostr if you want minimal surface, social/feed-shaped apps, and the relay topology is a feature, not a bug.

nostr.com

Pick Weave

Pick Weave if you want signed events as one piece of a bigger Rust application stack — alongside drives, views, multi-writer convergence, and agent context.

All primitives →

Where they meet, where they diverge.

  • Nostr is excellent at being small and replay-friendly through relays.
  • Weave assumes you might not want a relay topology, and you might want to compose the same primitives into agent fabrics, drives, or knowledge graphs — not only social.