Contents
unofficial · written from the source

Xray-core, explained.

The official docs tell you which JSON keys exist. These docs tell you what the core actually does with them — how each protocol and transport works, what it looks like on the wire, and when you'd want it. Every page is written by reading the Go source, not the README.

One pipeline, many disguises

Everything in Xray-core is the same five-stage pipeline. Protocols decide what the bytes mean, transports decide what the connection looks like to an observer — the docs are organized around exactly that split.

How a connection moves through xray-core

Real world

10/10 pages ready

Core concepts

How a packet moves through the core: dispatcher, router, DNS, mux — the machinery every protocol shares.

9/9 pages ready

Protocols

VLESS, VMess, Trojan, Shadowsocks and friends — what each one actually puts on the wire and when to pick it.

10/10 pages ready

Transports

The layer censors actually see. TCP, WebSocket, XHTTP, REALITY — how each one hides (or doesn’t).

12/12 pages ready

Internals

Buffers, session context, domain matchers — the pieces you hit when reading or extending the source.

4/4 pages ready