http

The shared Rust crate defining Request, Response, and other core HTTP types

Library
Cargo
v1.5.0
1,390 stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum. How we score it →
76 /100 Good
Development Activity 68
Maintenance 48
Community 88
Maturity 60
Momentum 40

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation. How we score it →
77 /100 Good
Architecture 85
Code Quality 88
Innovation 70
Learning Curve 65

http is a foundational Rust crate providing the shared Request, Response, Method, StatusCode, Uri, Version, and HeaderMap types that most of the Rust HTTP ecosystem — hyper, tonic, axum, reqwest, tower, and many others — builds on top of. Rather than each HTTP-adjacent crate defining its own incompatible request/response representations, they all depend on http so values can move between a client, a server, and any middleware in between without conversion glue.

The crate intentionally contains no networking, parsing, or I/O code of its own; it exists purely to standardize the vocabulary types that HTTP-related crates pass to each other, with an optimized HeaderMap implementation as its most substantial piece of internal logic.

What You Get

  • Request<T> and Response<T> generic types with ergonomic builder APIs for constructing HTTP messages
  • HeaderMap - a purpose-built multi-map optimized for HTTP header storage and case-insensitive lookup
  • Method, StatusCode, Uri, and Version types shared across the entire Rust HTTP ecosystem
  • Zero-copy-friendly HeaderName/HeaderValue types backed by bytes::Bytes
  • Conversion trait implementations (convert.rs) so common std types interoperate cleanly with the crate’s types

Common Use Cases

  • Defining the request/response types passed between a client and server built on hyper, tonic, or axum
  • Writing HTTP middleware (a tower::Layer) that needs to inspect or modify headers, method, or status without depending on any particular server implementation
  • Implementing a new HTTP client or server that wants to interoperate with the existing hyper-ecosystem tooling out of the box
  • Building an HTTP proxy or gateway that manipulates requests/responses using a common, well-tested type vocabulary

Under The Hood

Architecture Across roughly 14,500 lines, the crate is organized around independent, focused modules — request.rs and response.rs define the generic Request<T>/Response<T> builder types, header/ implements the HeaderMap/HeaderName/HeaderValue trio as its own self-contained sub-module, and method.rs, status.rs, version.rs, uri/ each own one small, well-scoped vocabulary type — reflecting the crate’s deliberate scope discipline of shipping types and nothing else. Tech Stack Depends on bytes for zero-copy byte storage in header values and little else, keeping the dependency graph shallow since this crate sits at the base of the dependency tree for a large share of the Rust HTTP ecosystem (hyper, axum, tonic, reqwest, tower). Code Quality tests/header_map.rs and tests/header_map_fuzz.rs reflect that HeaderMap — the crate’s most algorithmically complex piece, since it’s a custom hash-map variant tuned for HTTP header access patterns — receives targeted fuzz testing in addition to conventional unit tests, appropriate rigor for a type this deeply relied upon. API Design The builder pattern on Request/Response (Request::builder().method(...).uri(...).body(...)) is now the de facto idiom across the Rust HTTP ecosystem precisely because this crate established it first, and extensive From/TryFrom conversions in convert.rs mean callers rarely need explicit type-conversion boilerplate at API boundaries.

Used by 19 apps in this directory

Rust
100%
Other

Meilisearch

Search

59,644

Lightning-fast hybrid search engine with AI-powered semantic and full-text retrieval for modern applications.

View details
90
Repo Health
88
Technical
67
Dependency
Built with
Rust 100%
Updated 1 weeks ago
Rust
86%
Apache 2.0

mesh-llm

AI Agents · AI Development

3,551

Mesh LLM pools GPUs and memory across every machine you own into one OpenAI-compatible API, so agents tap distributed compute instead of a single GPU box or a metered cloud bill.

View details
85
Repo Health
91
Technical
69
Dependency
Built with
Rust 86%
TypeScript 10%
Updated 6 days ago
Rust
89%
Apache 2.0

OpenFang

AI Agents

18,221

An open-source "Agent Operating System" built in Rust — a single binary providing a kernel, memory, skills, extensions, and multi-channel runtime for running AI agents, with 1,700+ tests and zero clippy warnings.

View details
51
Repo Health
73
Technical
67
Dependency
Built with
Rust 89%
Updated 4 months ago
Python
55%
Other

PostHog

Ab Testing Experimentation · Analytics · Developer Tools

40,397

The all-in-one open source product platform combining analytics, session replay, feature flags, error tracking, AI observability, and a built-in data warehouse in a single self-hostable stack.

View details
92
Repo Health
80
Technical
65
Dependency
Built with
Python 55%
TypeScript 36%
Updated 6 days ago
Rust
72%
Apache 2.0

Rivet

AI Agents · Developer Tools

6,326

Stateful actors as a primitive for AI agents, real-time collaboration, and durable execution — with in-memory state, WebSockets, queues, and scheduling built in.

View details
87
Repo Health
81
Technical
64
Dependency
Built with
Rust 72%
TypeScript 25%
Updated 6 days ago
Rust
79%
AGPL 3.0

Spacedrive

Collaboration · File Storage

39,292

One file manager for all your devices and clouds — powered by a Virtual Distributed File System built in Rust.

View details
84
Repo Health
84
Technical
63
Dependency
Built with
Rust 79%
TypeScript 18%
Updated 2 weeks ago
Rust
46%
MIT

Svix

Automation · Developer Tools

3,463

Open source, self-hostable webhook infrastructure that handles delivery, retries, HMAC signing, and multi-tenant event management so you never have to build a webhooks system from scratch.

View details
91
Repo Health
77
Technical
67
Dependency
Built with
Rust 46%
C# 16%
Updated 1 weeks ago
Rust
79%
Apache 2.0

TensorZero

Ab Testing Experimentation · AI Development · Monitoring

11,708

TensorZero unifies the LLM gateway, observability, evaluation, optimization, and experimentation stack behind a single OpenAI-compatible API, built in Rust for sub-millisecond p99 latency.

View details
53
Repo Health
87
Technical
68
Dependency
Built with
Rust 79%
TypeScript 15%
Updated 4 months ago
Rust
83%
AGPL 3.0

Vaultwarden

Password Manager · Security

69,556

Unofficial Bitwarden-compatible server in Rust — run the full Bitwarden ecosystem on a Raspberry Pi using every official client you already have, without the multi-container overhead.

View details
89
Repo Health
69
Technical
69
Dependency
Built with
Rust 83%
Updated 1 weeks ago

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers