# Relay The relay and channel protocol of syalia-srl/relay: two-sided channels that carry end-to-end encrypted frames a relay cannot read. ## Documentation - [Overview](index.md): what the relay and the channel protocol are, with links to every page. - [Running a relay](run-a-relay.md): the relay as one static Go binary: systemd, Caddy with TLS, keys.json, checks, upgrades and state. - [Protocol](protocol.md): the normative relay API v1 and channel protocol v3: layers, routes, handshakes, frames and control messages. - [Security](security.md): the threat model: what the code promises, which adversaries it considers, and what it does not do. - [Python](python.md): the Python host and guest: install, pairing, sending, stores, errors and a worked echo example. - [JavaScript](javascript.md): the JavaScript host and guest for Node and browsers: install, pairing, stores, errors and a worked echo example. - [Go](go.md): the Go host and guest: install, pairing, stores, errors and a worked echo example. - [llms.txt](llms.txt): this index. ## Tests - [Test vectors](https://github.com/syalia-srl/relay/tree/main/vectors): JSON cases that pin the handshake, transport, rekey and pairing-code bytes. - [Conformance suite](https://github.com/syalia-srl/relay/tree/main/conformance): a black-box suite that starts a relay and checks the v0 behaviour and every v1 rule. ## Source - [Repository](https://github.com/syalia-srl/relay): the relay server, PROTOCOL.md, SECURITY.md and the three libraries. Every page above has an HTML version at the same path with `.html` in place of `.md`.