open-standards/wai/quickstart/README.md
Transaction Science c86b75ac52 The service binaries are wai-relay, wai-room and wai-ingest; the crates keep their names
WAI toolchain decision 11: joule-moq-relay builds wai-relay, joule-moq-room wai-room, and
joule-moq-ingest wai-ingest. wai dev finds them by those names (WAI_RELAY_BIN, WAI_ROOM_BIN),
and the quickstart archive, the release workflow, the examples' workflow, the browser
tests, the interop scripts, the example host script, the Scoop manifest and the crates'
READMEs and example configurations name them so. Wire and record identifiers that carry a
crate's name (joule-moq-relay/session-summary/2, joule-moq-ingest/session/1, the relay's
MOQT implementation string) and the log variables (JOULE_MOQ_*_LOG) are unchanged.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 04:52:31 -04:00

35 lines
1.6 KiB
Markdown

# WAI
The `wai` command line, and the reference software `wai dev` runs on your own machine. All
of it is open source under Apache-2.0, built from the open-standards repository
(`wai/quickstart/build.sh`).
| File | What it is |
|---|---|
| `bin/wai` | The command line: `hello`, `create`, `dev`, `verify`, and the envelope tools (`inspect`, `wrap`, `unwrap`, `encode`, `decode` for the mandatory floor, `capabilities`) |
| `bin/wai-relay` | The relay a room's media goes through: MOQT over QUIC, WebTransport and WebSocket |
| `bin/wai-room` | The room service: a room's keys, its grants, its clock |
| `bin/wai-remote-host` | A remote desktop room's host agent |
| `bin/wai-pack` | The packager: a title as WAI objects, HTTP playlists and a MoQ catalog |
| `share/wai/web/` | The room client a browser loads: its pages and their WebAssembly |
## Start
```sh
wai hello # WAI's four steps on a sample: name, dispatch, rebuild, receipt
wai create my-room --template video-room # a video room in one page
cd my-room
wai dev # the relay, the room service and your page, on 127.0.0.1:8080
wai verify ../wai-hello # the receipts hello wrote, checked offline
```
`wai create --list` names every template. `wai dev --help` gives its options. Nothing here
needs an account, and nothing is sent off your machine.
Keep `bin/` and `share/` side by side: `wai dev` finds the relay, the room service and the
room client beside itself.
## More
- The standard and its documentation: https://wai.transaction.science/
- The source: https://git.transaction.science/Transaction-Science/open-standards