Rust HTTP

Open-source Rust projects categorized as HTTP

Top 20 Rust HTTP Projects

  • GitHub repo hyper

    An HTTP library for Rust (by hyperium)

    Project mention: Rust's advantages in 1-3 Slides on Management Level | reddit.com/r/rust | 2021-06-15

    The way Hyper uses it to prevent that PHP "can't modify headers because the body has already begun streaming" error at compile time is a good concrete example.

  • GitHub repo warp

    A super-easy, composable, web server framework for warp speeds.

    Project mention: What Are Your Moves Tomorrow, June 07, 2021 | reddit.com/r/wallstreetbets | 2021-06-06

    I use warp to set up a web server and then just have them talk over a REST api that I make with warp.

  • GitHub repo reqwest

    An easy and powerful Rust HTTP Client

    Project mention: Yet Another Snazzy Rust CLI | dev.to | 2021-06-19

    "How to choose the right Rust HTTP client" gives a good overview of Rust HTTP crates. In this case, I settled on reqwest.

  • GitHub repo sozu

    Sōzu HTTP reverse proxy, configurable at runtime, fast and safe, built in Rust. It is awesome! Ping us on gitter to know more

    Project mention: ARLB: A very experimental load balancer/reverse proxy based on hyper and tokio | reddit.com/r/rust | 2021-03-18

    How does it compare to sozu?

  • GitHub repo woodpecker

    Drill is an HTTP load testing application written in Rust inspired by Ansible syntax (by fcsonline)

    Project mention: [ANN] servant-benchmark v0.1.1.1 | reddit.com/r/haskell | 2021-04-27

    I've recently published servant-benchmark, a small library that produces request files from Servant APIs to be used by external benchmarking tools. It currently supports exports for wrk, siege, and drill.

  • GitHub repo leaf

    A versatile and efficient proxy framework with nice features suitable for various use cases. (by eycorsican)

    Project mention: Rusticles #15 - Wed Oct 14 2020 | dev.to | 2020-10-14

    eycorsican/leaf (Rust): A lightweight and fast proxy utility tries to include any useful features.

  • GitHub repo Rouille, Rust web server middleware

    Web framework in Rust

    Project mention: What's everyone working on this week (23/2021)? | reddit.com/r/rust | 2021-06-07

    I'm continuing implementing features, getting Cozy Date app (cozydate.com) ready for launch. The backend is Rust + rouille on Heroku. This week I'm finishing up the app's Account Settings page. I'm merging a bunch of get/check/save RPCs for user postal code, identity, preferences, and account status into a single set of RPCs /get-account-settings, /check-account-settings, and /save-account-settings. This will eliminate some error states and reduce duplication in frontend and backend code. It also moves error message generation code from the frontend to the backend.

  • GitHub repo http

    Rust HTTP types (by hyperium)

    Project mention: Rust crate project ideas | reddit.com/r/rust | 2021-01-18

    ...or, if none of those are interesting to you, I suppose you could snipe one of the things that I'd prefer you didn't because they're so effortless for me that it's just a matter of finding the time: * I've been meaning to write a reader/writer crate for GQview/Geeqie .gqv collection files. * hyperium/mime#131 * hyperium/http#460

  • GitHub repo ureq

    Minimal request library in rust.

    Project mention: Why asynchronous Rust doesn't work | news.ycombinator.com | 2021-03-09
  • GitHub repo ntex

    framework for composable networking services

    Project mention: JS faster than Rust? | reddit.com/r/rust | 2021-02-24

    ntex is a fork of actix by the previous maintainer https://github.com/ntex-rs/ntex/blob/b0aa9395daf6e76c28a6216831b030e7713c662a/Cargo.toml

  • GitHub repo binserve

    A blazingly fast static web server with routing, templating, and security in a single binary you can set up with zero code. :zap::crab:

    Project mention: Blog is now hosted on a GPS/LTE modem | news.ycombinator.com | 2021-04-02
  • GitHub repo isahc

    The practical HTTP client that is fun to use.

    Project mention: Is it possible to create a future without using threads? | reddit.com/r/rust | 2021-01-11

    isahc uses threads internally: https://github.com/sagebind/isahc/blob/master/src/agent.rs

  • GitHub repo Mockito

    HTTP mocking for Rust! (by lipanski)

  • GitHub repo httparse

    A push parser for the HTTP 1.x protocol in Rust.

    Project mention: lets get 'well done officers' going in the chat | reddit.com/r/rustjerk | 2021-05-04

    /rejerk https://github.com/seanmonstar/httparse/issues/58

  • GitHub repo routerify

    A lightweight, idiomatic, composable and modular router implementation with middleware support for the Rust HTTP library hyper.rs

    Project mention: New Rust Programmer: Question about Web Serving | reddit.com/r/rust | 2021-06-16

    I'd also recommend routerify. It is a small layer on top of hyper but it makes writing HTTP servers quite enjoyable. My colleague dhruvasagar is creating a series of screencasts for building a URL shortener with Rust. Do check his series.

  • GitHub repo goose

    Load testing framework, inspired by Locust

    Project mention: Are you ready for a Goose Attack? | dev.to | 2021-03-30

    Goose Repo

  • GitHub repo another-rust-load-balancer

    A load balancer with support for different middlewares and load balancing strategies, based on hyper and tokio

    Project mention: ARLB: A very experimental load balancer/reverse proxy based on hyper and tokio | reddit.com/r/rust | 2021-03-18
  • GitHub repo http-server

    Simple and configurable command-line HTTP server (by EstebanBorai)

    Project mention: Release v0.1.0 for HTTP Server Crate a Simple and configurable command-line HTTP Server | reddit.com/r/rust | 2021-04-02
  • GitHub repo eve-rs

    A simple, intuitive, express-like HTTP library

    Project mention: Does any interesting projects need help? | reddit.com/r/rust | 2020-12-22

    Hate to toot my own horn but https://github.com/vicara-hq/eve-rs

  • GitHub repo multipart-stream-rs

    Rust library to parse and serialize async multipart/x-mixed-replace streams.

    Project mention: What's everyone working on this week (17/2021)? | reddit.com/r/rust | 2021-04-26

    I find my implementation in parser.rs kind of gross, but at least it seems to work. If anyone happens to look, I'd appreciate tips for cleaning up this code.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-06-19.

Index

What are some of the best open-source HTTP projects in Rust? This list will help you:

Project Stars
1 hyper 8,068
2 warp 4,880
3 reqwest 4,189
4 sozu 1,410
5 woodpecker 834
6 leaf 730
7 Rouille, Rust web server middleware 653
8 http 641
9 ureq 627
10 ntex 504
11 binserve 454
12 isahc 391
13 Mockito 344
14 httparse 296
15 routerify 239
16 goose 214
17 another-rust-load-balancer 37
18 http-server 9
19 eve-rs 1
20 multipart-stream-rs 1
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com