#http-server #client-server #hyper-http #async-http #http #hyper-client

hyperdriver

The missing middle for Hyper - Servers and Clients with ergonomic APIs

25 releases (7 breaking)

0.8.5 Dec 13, 2024
0.8.2 Nov 2, 2024
0.5.7 Dec 9, 2024
0.5.6 Jul 25, 2024

#125 in HTTP client

Download history 79/week @ 2024-09-25 279/week @ 2024-10-02 44/week @ 2024-10-09 242/week @ 2024-10-16 232/week @ 2024-10-23 226/week @ 2024-10-30 62/week @ 2024-11-06 41/week @ 2024-11-13 20/week @ 2024-11-20 2/week @ 2024-11-27 578/week @ 2024-12-04 412/week @ 2024-12-11 18/week @ 2024-12-18 188/week @ 2024-12-25 60/week @ 2025-01-01 106/week @ 2025-01-08

380 downloads per month
Used in 2 crates

MIT license

500KB
12K SLoC

hyperdriver: Tools and libraries which help out hyper

crate Docs Build Status MIT licensed

This crate exists to fill the missing middle between hyper and full-fledged frameworks like axum. Crates like axum provide servers, and crates like reqwest provide clients, but both are specific to what they do. hyperdriver provides a set of services and tools which can be used to build both servers and clients in a more flexible way.

If you want to control the protocol, or the transport (e.g. using something other than TCP) then hyperdriver is for you.

Features

  • Server with graceful shutdown, HTTP/2 and TLS support.
  • Client with HTTP/2 and TLS support.
  • Streams which can dispatch between TCP, Unix domain, and in-process duplex sockets.
  • A unifying Body type to make building small Clients and Servers easier.
  • Bridge between Tokio and Hyper, similar to hyper-utils.

Dependencies

~5–24MB
~433K SLoC