hyperium

hyperium/hyper

Rust MIT Dev Tools

An HTTP library for Rust

16.2k stars
1.8k forks
active
GitHub +16 / week

16.2k

Stars

1.8k

Forks

258

Open issues

30

Contributors

v1.10.1 29 May 2026

AI Analysis

hyper is a low-level, production-grade HTTP library for Rust that implements HTTP/1 and HTTP/2 with an asynchronous design. It serves as a foundational building block for HTTP clients and servers, best suited for developers building higher-level frameworks or libraries rather than end-users seeking convenience APIs; higher-level alternatives like reqwest (client) and axum/warp (servers) are built on top of hyper.

Dev Tools Library Discovery value: 2/10
Documentation 8/10
Activity 9/10
Community 9/10
Code quality 9/10

Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.

Overall score 9/10

AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.

http async rust networking performance
Actively maintained Well documented MIT licensed Popular Production ready
Deep Analysis · Based on README and public signals
3w ago

Hyper: Rust's foundational HTTP library powering major frameworks and production systems

hyper is a low-level, asynchronous HTTP/1 and HTTP/2 library for Rust, explicitly designed as a building block rather than an end-user framework. It is used directly by library authors and as the foundation for widely adopted higher-level crates like reqwest (HTTP client), axum (web framework), and warp. Its target audience is Rust ecosystem builders and performance-critical applications that need direct control over HTTP semantics. It emphasizes correctness, performance, and async-first design using Tokio.

Origin

Created in August 2014, hyper is one of the oldest HTTP libraries in the Rust ecosystem. It predates async/await in Rust and has been refactored multiple times to track Rust's async evolution, including major breaking changes in the 0.x-to-1.x transition that landed after years of work.

Growth

Growth was driven primarily by becoming the de facto HTTP substrate for the Rust ecosystem. reqwest, axum, and warp all depend on hyper, meaning hyper's adoption grew indirectly as those higher-level libraries gained popularity. The 1.0 stable release consolidated trust after a long pre-1.0 period. Stars have plateaued (4 new in last 7 days) because the library is mature and widely known within its audience.

In production

hyper is listed as a direct dependency of reqwest (one of the most downloaded Rust crates on crates.io), axum (the dominant Rust web framework), and is used by AWS's Rust SDK. crates.io download statistics for hyper historically rank it among the top 50 most downloaded Rust crates. Production use is extensively documented across the Rust ecosystem.

Code analysis
Architecture

Appears to follow a layered, composable design: low-level HTTP parsing and framing at the core, with async I/O abstractions on top. Likely built around Tokio's async runtime, exposing both client and server APIs. The README explicitly positions it as infrastructure-level, not application-level.

Tests

README claims the library is 'tested and correct', and CI badges are visible, suggesting automated test pipelines are active. Specific coverage metrics are not documented in README.

Maintenance

Last push was June 19, 2026 — three days before evaluation date. This indicates very active, ongoing maintenance. The project has been continuously developed for over 11 years, with a stable 1.x release line. Active Discord community also signals ongoing developer engagement.

Honest verdict

ADOPT IF: you are building an HTTP library, framework, or infrastructure component in Rust that needs direct HTTP control, maximum performance, and correctness guarantees. AVOID IF: you need a ready-to-use HTTP client or web framework — use reqwest or axum instead; hyper's API requires significant boilerplate for application-level use. MONITOR IF: you track Rust HTTP ecosystem stability; hyper's 1.x API evolution affects every crate built on top of it.

Independent dimensions

Mainstream potential

6/10

Technical importance

9/10

Adoption evidence

9/10

Risks
  • The 0.x to 1.x API migration introduced breaking changes that affected downstream crates for an extended period; future major versions could again fragment the ecosystem temporarily.
  • Being infrastructure-level means API stability is critical — any semver-breaking change propagates widely through the Rust HTTP ecosystem.
  • Relatively small core maintainer team; long-term bus-factor risk if key contributors reduce involvement.
  • Low-level API complexity may discourage direct use, pushing more users toward wrapper libraries and reducing direct community feedback.
  • Async Rust ecosystem changes (e.g., alternative runtimes to Tokio) could require architectural adaptation over time.
Prediction

hyper will remain the dominant HTTP substrate in the Rust ecosystem for the foreseeable future. Its role is structural — ecosystem-level displacement would require a coordinated migration away from all crates built on it, which appears highly unlikely.

0 found this helpful

Newsletter

Get analyses like this every Monday

Free weekly digest of the most interesting open-source discoveries.

Languages

Rust
96.6%
C
3.3%
Shell
0.1%
Makefile
0%

Information

Language
Rust
License
MIT
Last updated
3d ago
Created
144mo ago
Analyzed with
anthropic/claude-haiku-4-5

Stars over time

Loading…

Contributors over time

Top 100 contributors only — repos with more will plateau at 100.

Loading…

Similar repos

hyperium

hyperium/http

The `http` crate provides foundational Rust types for HTTP—Request, Response,...

1.4k Rust Dev Tools
hyperium

hyperium/h2

h2 is a Tokio-aware HTTP/2 protocol implementation for Rust, providing both...

1.5k Rust Dev Tools
hyperlight-dev

hyperlight-dev/hyperlight

Hyperlight is a lightweight Virtual Machine Manager designed to embed sandboxed...

4.5k Rust Security
hydro-project

hydro-project/hydro

Hydro is a Rust framework for building distributed systems with formal...

1.3k Rust Dev Tools
algesten

algesten/ureq

Ureq is a lightweight, synchronous HTTP client library for Rust that...

2.2k Rust Dev Tools
vs. alternatives
reqwest

reqwest is built on top of hyper and targets end users wanting a convenient HTTP client. They are complementary, not competing — reqwest wraps hyper's complexity.

axum

axum is a web framework built on hyper. Again complementary: axum handles routing and middleware while delegating HTTP to hyper.

actix-web

actix-web is a full HTTP server framework with its own HTTP implementation. Unlike hyper, it is not intended as a building block. It competes at the application layer, not the infrastructure layer.

h2 (crate)

h2 is a lower-level HTTP/2 implementation that hyper itself uses internally. hyper provides a unified HTTP/1+HTTP/2 API on top of it.

ureq

ureq is a synchronous, minimal HTTP client for Rust. It targets simplicity over performance and does not depend on hyper. Suited for scripts or blocking contexts where async is unwanted.