← All products

Relay and MESH

Open specifications for decentralized social networks.

About

Relay splits a social protocol into two layers. The truth layer holds signed, content-addressed facts: identities, an append-only event log, state and attestations. The view layer holds deterministic projections over those facts, such as feeds and ordered lists. The stack spec has gone through several drafts and is now at version 2.

MESH, the Modular Extensible Social Hybrid Protocol, is a sibling specification that layers privacy, integrity, moderation, views and network over a self-sovereign identity, with a Python implementation.

What it does

Facts first

Relay's truth layer is signed, content-addressed facts: identity, an append-only event log, state and attestations.

Deterministic views

Feeds and lists are projections over those facts. Anyone who computes a view from the same inputs gets the same answer.

Self-sovereign identity

In MESH an Ed25519 key is your identity, with device keys for multiple devices and optional social, custodial or hardware recovery.

Private by default

MESH uses X25519 and AES-256-GCM for direct messages and groups.

Composable moderation

Third parties publish attestations, and each person chooses whose to trust.

A working reference

MESH has a Python implementation on SQLite or PostgreSQL, and the repository reports its own benchmarks.

The Pitch

Facts first, feeds second

Read the specifications and the reference code.

Progress

Relay stack specDraft 2.0
MESH spec and Python implementationv1.1

At a glance

Relay
Stack spec, drafts v1.0 to v2
MESH
Spec v1.1 with a Python implementation
Compared with
Nostr, ActivityPub, SSB, AT Protocol
Source
Open repositories

Role

Author. Protocol specifications and reference implementations.