iroh-h3-axum

Crates.ioiroh-h3-axum
lib.rsiroh-h3-axum
version0.1.0
created_at2025-11-19 23:59:21.304481+00
updated_at2025-11-19 23:59:21.304481+00
descriptionAxum integration for serving and consuming HTTP/3 over the Iroh QUIC P2P transport.
homepage
repositoryhttps://github.com/Le-Maz/iroh-h3
max_upload_size
id1940949
size115,014
(Le-Maz)

documentation

README

Iroh HTTP/3 Toolkit

A collection of crates enabling HTTP/3 communication over the Iroh peer-to-peer (P2P) transport built on QUIC.

This monorepo contains a set of Rust crates that integrate the iroh networking stack — a P2P library built on top of QUIC — with the h3 HTTP/3 protocol implementation and compatible async frameworks such as axum.

The implementation is adapted from the hyperium/h3 project and reworked to support Iroh’s peer-to-peer QUIC transport model. All code is released under the MIT License.


Repository Structure

Crate Description
iroh-h3 Core transport adapter bridging iroh::endpoint::Connection with h3::quic::Connection to support HTTP/3 semantics over Iroh’s QUIC layer.
iroh-h3-client Client utilities for establishing outbound HTTP/3 streams over Iroh’s P2P connections.
iroh-axum Integration layer allowing Axum applications to serve or consume HTTP/3 traffic over Iroh.

Each crate lives within the same Cargo workspace and is designed to interoperate cleanly while remaining usable independently.


Design Goals

  • P2P Integration: Extend HTTP/3 semantics to work seamlessly over Iroh’s decentralized QUIC-based transport.
  • Interoperability: Preserve the h3 trait model (Connection, BidiStream, etc.) to stay compatible with existing HTTP/3 stacks.
  • Extensible Stack: Serve as a foundation for higher-level protocols and frameworks like Axum to operate over peer-to-peer links.
  • Correct and Robust: Carefully translate iroh’s error and stream models into the HTTP/3 abstraction layer.

License

All code in this repository is licensed under the MIT License.
It includes portions derived from the hyperium/h3 project, which is also MIT-licensed.

Commit count: 69

cargo fmt