What is social-relay messaging?
Why Yakr routes messages through pairwise-trusted relays instead of a central platform or open global relay pool.
Most messengers depend on one company’s servers. Decentralised designs often swing the other way — an open relay pool where anyone can upload and hope recipients find their mail.
Yakr takes a different angle: your relay network is your pairing graph.
Pairwise trust, not a global directory
You only use relays operated by people (or orgs) you have pairwise paired with. Relay URLs and TLS pins arrive in signed delivery profiles exchanged during pairing — not scraped from a public directory.
That means:
- A homelab operator can run a mailbox for friends without becoming a global upload sink
- Relay authorisation is tied to cryptographic relationships, not IP allowlists alone
- Your reachable network grows with who you trust
Store-and-forward for real mobile clients
Phones on cellular NAT cannot accept inbound HTTP. Yakr clients poll outbound to paired relays, fetch opaque blobs by mailbox tag, and decrypt locally. Relays see ciphertext and metadata — never plaintext.
Open protocol, separate products
This repository defines the specification and reference implementations. Consumer messenger apps are independent products that can implement Yakr — the protocol does not ship as a single official app.
Read the visual guide or dive into the normative spec on GitHub.
