Skip to content

Rust Crates

moqtap’s protocol core is a set of MIT-licensed Rust crates published to crates.io. Use them in your own projects.

CrateDescriptioncrates.ioAPI Docs
moqtap-codecZero-dependency wire codec for drafts 07–17crates.iorustdoc
moqtap-clientOutbound QUIC/WebTransport MoQT clientcrates.iorustdoc
moqtap-proxyTransparent intercepting proxycrates.iorustdoc
moqtap-trace.moqtrace binary format reader/writercrates.iorustdoc

Add a crate to your Cargo.toml:

[dependencies]
moqtap-codec = "0.1"
moqtap-client = "0.1"

Each supported draft is a separate Cargo feature (draft07..draft17) on both moqtap-codec and moqtap-client. The codec defaults to all-drafts; the client defaults to draft14. Enable additional drafts to negotiate them at runtime.

moqtap-codec Pure codec, no I/O. Foundation for everything.
├── moqtap-client Outbound QUIC client, endpoint logic, session management.
├── moqtap-proxy Intercepting proxy (depends on codec + client transport).
└── moqtap-trace Event capture, .moqtrace file format.

Use only what you need — moqtap-codec alone is useful if you just want to parse MoQT messages without any I/O, and moqtap-trace can be embedded into a relay or custom client to emit .moqtrace files.

Rust 1.83 or later.