Nostr (“Notes and Other Stuff Transmitted by Relays”) is a simple protocol: clients create signed events (JSON), and relays accept or reject them based on loose rules. There is no single canonical chain — your identity is a public key; your feed is whichever relays you and your contacts use.
Each event has a kind (text note, reaction, channel message, etc.), tags for routing hints, content, and a cryptographic signature tying it to a keypair. Relays index and serve events; they do not “own” your account the way a centralized social graph does.
Changing history is harder to fake for third parties without keys — but key custody is on you; lose the key, lose the identity continuity story.
Relays can be policy-heavy (spam filters, paid ingress) or minimal. Clients usually talk to several relays for redundancy and to stitch partial views of the network together.
Nostr is not peer-to-peer WebRTC by default — it is many servers + signed messages. It composes well with URLs, zaps, and NIP-defined behaviors without forcing one company’s API.
Coffee’s social stack can teach Nostr-shaped ideas (keys, relays, open clients) even when the UI is a guided lab. The lesson: protocol literacy beats chasing a single app’s Terms of Service as the source of truth.
Cross-link: explore COFFEE-SOCIAL and Connect surfaces when you want hands-on relay experiments.
Web3 adds global replicated state machines (chains) and wallet-based accounts — overlapping with “decentralized” branding but different tradeoffs from Nostr or IPFS alone.