# moqtap > moqtap is a suite of debugging, testing, and monitoring tools for Media over QUIC Transport (MoQT), an IETF protocol for delivering media and data over QUIC connections. ## What is moqtap? moqtap provides protocol-level visibility into MoQT sessions. It connects to MoQT relays, decodes binary control messages, subscribes to tracks, fetches data, and displays objects — giving developers full insight into what's happening on the wire. ## Products ### moqtap Desktop Cross-platform MoQT protocol debugger for macOS, Windows, and Linux. Connect to any relay via native QUIC or WebTransport. Inspect control messages, subscribe to tracks, fetch data, view objects, see QUIC transport stats, and export sessions as .moqtrace files. - Product page: https://moqtap.com/products/desktop - Download: https://moqtap.com/download ### WebTransport Inspector Browser extension for Chrome and Firefox for inspecting MoQT over WebTransport. Monitor connections, decode control messages, inspect streams, view payloads, and export traces — right in the browser. - Product page: https://moqtap.com/products/browser-extension - Documentation: https://moqtap.com/tools/webtransport-inspector/ ### moqtap CLI Command-line MoQT client and transparent intercepting proxy with two modes. **Intercept mode**: sits between your client and relay as a transparent proxy, decoding every frame in real-time without altering traffic. **Peek mode**: lightweight MoQT client for direct relay probing — discover namespaces, list tracks, and stream data. Records sessions to .moqtrace files. Supports JSON output, filtering, WebTransport, and multiple draft versions. Configurable via .moqtap.toml, env vars, or URL schemes. - Product page: https://moqtap.com/products/cli - Install: curl -sSf https://moqtap.com/install.sh | sh (also: brew install moqtap/tap/moqtap, npm install -g moqtap, winget install moqtap.moqtap) ### moqtap Logging Embeddable npm package for MoQT-powered websites. Collects session statistics, error rates, protocol health metrics, track usage, and latency data from real user sessions in production. Coming soon. ### Conformance Testing Automated protocol conformance testing for MoQT relays, publishers, and subscribers. Coming soon. ### Performance Monitoring Continuous latency benchmarks and performance monitoring for MoQT deployments. Coming soon. ## Open Source moqtap's core libraries are MIT-licensed: Rust crates (drafts 07–18, MSRV 1.83) — all published on crates.io: - **moqtap-codec** (https://crates.io/crates/moqtap-codec) — Zero-dependency MoQT wire codec; per-draft modules plus runtime `dispatch` enums - **moqtap-client** (https://crates.io/crates/moqtap-client) — Outbound MoQT client over QUIC (quinn) and WebTransport (wtransport); session state, subscribe/fetch/publish flows - **moqtap-proxy** (https://crates.io/crates/moqtap-proxy) — Transparent intercepting proxy; observes MoQT frames inline via `ProxyObserver`, optional mutation via `ProxyHook` - **moqtap-trace** (https://crates.io/crates/moqtap-trace) — `.moqtrace` binary format reader and writer (CBOR, cross-language with @moqtap/trace) npm packages: - **moqtap** — CLI package, install globally for the moqtap command-line tool - **@moqtap/codec** — MoQT message encoding/decoding, supports drafts 07–18 - **@moqtap/trace** — Read and write .moqtrace session recordings - **@moqtap/test-vectors** — Language-agnostic codec test vectors for validation GitHub: https://github.com/moqtap ## Documentation - Getting started: https://moqtap.com/getting-started/installation/ - Guides: https://moqtap.com/guides/connecting-to-relays/ - MoQT overview: https://moqtap.com/moqt - Concepts: https://moqtap.com/concepts/architecture/ - Reference: https://moqtap.com/reference/cli/ ## MoQT Protocol Explainers Focused, self-contained answers to common wire-protocol questions (draft-ietf-moq-transport, drafts 07–19): - Track Namespace vs Track Name: https://moqtap.com/moqt/track-namespace-vs-track-name — the namespace is an ordered tuple grouping tracks; the track name is a byte string naming one track within it; together they form the Full Track Name. - The SUBSCRIBE message structure: https://moqtap.com/moqt/subscribe-message — field-by-field anatomy of SUBSCRIBE (Request ID, Track Alias, Track Namespace, Track Name, priority, group order, forward, filter type, parameters) with draft-17/18/19 differences. - SUBSCRIBE_NAMESPACE & track namespace prefix matching: https://moqtap.com/moqt/subscribe-namespace — how namespace discovery works, how a prefix tuple matches namespaces, and the draft-18 SUBSCRIBE_NAMESPACE / SUBSCRIBE_TRACKS split. ## MoQT Specification (section by section) The MoQT spec (draft-ietf-moq-transport) rendered one page per section — deep-linkable and cross-linked, ideal for retrieving a single section without loading the whole ~100-page draft. Covers every supported draft: draft-07 through draft-19 (draft-19 current). Each draft has its own index at https://moqtap.com/spec/draft-NN (e.g. /spec/draft-17, /spec/draft-18), with a version switcher on each section. - Spec hub: https://moqtap.com/spec - draft-19 index: https://moqtap.com/spec/draft-19 - Per-section URLs use semantic slugs, e.g.: - SUBSCRIBE: https://moqtap.com/spec/draft-19/subscribe - SUBSCRIBE_NAMESPACE: https://moqtap.com/spec/draft-19/subscribe_namespace - Representing Namespace and Track Names: https://moqtap.com/spec/draft-19/representing-namespace-and-track-names - Object Data Model: https://moqtap.com/spec/draft-19/object-data-model ## Use Cases - Debug MoQT sessions: https://moqtap.com/use-cases/moqt-debugging - Relay conformance testing: https://moqtap.com/use-cases/relay-conformance - Live streaming monitoring: https://moqtap.com/use-cases/live-streaming-quality - CI/CD integration: https://moqtap.com/use-cases/ci-integration ## Key Pages - Homepage: https://moqtap.com - Pricing: https://moqtap.com/pricing - Download: https://moqtap.com/download - Blog: https://moqtap.com/blog - Contact: https://moqtap.com/contact - Email: hello@moqtap.com