#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

#128 in HTTP client

Download history 163/week @ 2024-09-21 249/week @ 2024-09-28 87/week @ 2024-10-05 25/week @ 2024-10-12 381/week @ 2024-10-19 106/week @ 2024-10-26 240/week @ 2024-11-02 34/week @ 2024-11-09 47/week @ 2024-11-16 8/week @ 2024-11-23 155/week @ 2024-11-30 712/week @ 2024-12-07 139/week @ 2024-12-14 18/week @ 2024-12-21 177/week @ 2024-12-28 59/week @ 2025-01-04

522 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–23MB
~435K SLoC