open-standards/joule-code/joule-code-rs/crates/joule-moq-web/Cargo.toml
Transaction Science 72d66208fa joule-moq-web: the draft-22 codec and receipts for a browser, over joule-moq without its runtime
A wasm-bindgen surface, byte-oriented: the client's SETUP, every request and answer a
client sends from a JSON description, framed control messages and data streams read as
their bytes arrive, subgroup streams written object by object, a publisher's signer
(each group one object, signed into a group receipt chained to the one before, written
as the receipts-track object and the media object with its WAI_RECEIPT property) and a
subscriber's verifier (receipts admitted to the joined chain under the publisher's key,
each object verified against the receipt of its position, or accounted for by
inclusion). Native tests hold the pure-Rust half.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 13:24:59 -04:00

20 lines
962 B
TOML

[package]
name = "joule-moq-web"
version = "0.1.0"
description = "joule-moq's draft-22 codec and receipts for the browser: control and data messages encoded and decoded, each object signed into its group receipt by a publisher and verified against it by a subscriber, built for wasm32-unknown-unknown with a small wasm-bindgen surface. A browser MOQT client (WebTransport, with a WebSocket fallback) and its end-to-end tests live beside it."
edition = "2024"
rust-version = "1.97"
license = "Apache-2.0"
repository = "https://github.com/transaction-science/open-standards"
[lib]
crate-type = ["cdylib", "rlib"]
[dependencies]
# The codec, carriage and receipts alone: no tokio, no native dependency.
joule-moq = { path = "../joule-moq", default-features = false }
ed25519-dalek = "2"
serde_json = "1"
hex = "0.4"
# Pinned to the wasm-bindgen CLI the build runs: the two must match exactly.
wasm-bindgen = "=0.2.127"