MoQ is under active development. APIs and protocols may change between releases.

Skip to content

Quick Start

The default demo starts a relay, publishes a test video, and opens the web player. Everything runs on your machine.

bash
git clone https://github.com/moq-dev/moq
cd moq

Install Nix with flakes enabled, then:

bash
nix develop --command just

The dev shell pins every tool the repository uses. With nix-direnv, entering the directory loads the shell and the command becomes just.

Without Nix

Install Just, Rust, Bun, and FFmpeg, then:

bash
just install
just

Windows users should run setup.bat first; see Development.

What starts

  1. moq-relay on localhost:4443 with a generated certificate and anonymous access.
  2. moq-cli publishing Big Buck Bunny through the relay.
  3. The web demo at localhost:5173, where you can watch the stream or publish your camera.

Skip the relay

A public test relay runs at https://cdn.moq.dev/anon. Anything published there is public and discoverable, so pick a unique name and don't publish private media.

bash
# Publish a file, then open https://moq.dev/watch?name=<your-name>
ffmpeg -re -i video.mp4 -c copy -f mpegts - | \
    moq --client-connect https://cdn.moq.dev/anon --broadcast <your-name>.hang import ts

Every client, in every language, connects the same way: a relay URL whose path scopes authentication, plus a broadcast name. Media broadcasts end in .hang.

Next steps

Licensed under MIT or Apache-2.0