Rust Web programming

Open-source Rust projects categorized as Web programming

Top 23 Rust Web programming Projects

  • Rocket

    A web framework for Rust.

    Project mention: Top 10 Rusty Repositories for you to start your Open Source Journey | dev.to | 2023-12-19

    4. Rocket

  • actix-web

    Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.

    Project mention: Actix-Web: v4.5.0 | news.ycombinator.com | 2024-02-04
  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • hyper

    An HTTP library for Rust (by hyperium)

    Project mention: The Linux Kernel Prepares for Rust 1.77 Upgrade | news.ycombinator.com | 2024-02-18

    > If you are equally picky and constrain yourself to parts of the ecosystem which care about binary size, you still have more options and can avoid size issues.

    What's an example of this for, say, libcurl? On my system it has a tiny number of recursive dependencies, around a dozen. [0] Furthermore if I want to write a C program that uses libcurl I have to download zero bytes of data ... because it's a shared library that is already installed on my system, since so many programs already use it.

    I don't really know the appropriate comparison for Rust. reqwest seems roughly comparable, but it's an HTTP client library, and not a general purpose network client like curl. Obviously curl can do a lot more. Even the list of direct dependencies for reqwest is quite long [1], and it's built on top of another http library [2] that has its own long list of dependencies, a list that includes tokio, no small library itself.

    In terms of final binary size, the installed size of the curl package on my system, which includes both the command line tool and development dependencies for libcurl, is 1875.03 KiB.

    [0] I'm excluding the dependency on the ca-certificates package, since this only provides the certificate chain for TLS and lots of programs rely on it.

    [1] https://crates.io/crates/reqwest/0.11.24/dependencies

    [2] https://crates.io/crates/hyper/0.14.28/dependencies

  • gutenberg

    A fast static site generator in a single binary with everything built-in. https://www.getzola.org

    Project mention: Ask HN: Looking for lightweight personal blogging platform | news.ycombinator.com | 2024-02-06

    If I were to start again from scratch, I'd likely use Zola as SSG (https://www.getzola.org/)

  • reqwest

    An easy and powerful Rust HTTP Client

    Project mention: The Linux Kernel Prepares for Rust 1.77 Upgrade | news.ycombinator.com | 2024-02-18

    > If you are equally picky and constrain yourself to parts of the ecosystem which care about binary size, you still have more options and can avoid size issues.

    What's an example of this for, say, libcurl? On my system it has a tiny number of recursive dependencies, around a dozen. [0] Furthermore if I want to write a C program that uses libcurl I have to download zero bytes of data ... because it's a shared library that is already installed on my system, since so many programs already use it.

    I don't really know the appropriate comparison for Rust. reqwest seems roughly comparable, but it's an HTTP client library, and not a general purpose network client like curl. Obviously curl can do a lot more. Even the list of direct dependencies for reqwest is quite long [1], and it's built on top of another http library [2] that has its own long list of dependencies, a list that includes tokio, no small library itself.

    In terms of final binary size, the installed size of the curl package on my system, which includes both the command line tool and development dependencies for libcurl, is 1875.03 KiB.

    [0] I'm excluding the dependency on the ca-certificates package, since this only provides the certificate chain for TLS and lots of programs rely on it.

    [1] https://crates.io/crates/reqwest/0.11.24/dependencies

    [2] https://crates.io/crates/hyper/0.14.28/dependencies

  • Iron

    An Extensible, Concurrent Web Framework for Rust

    Project mention: Options for thread-per-request or thread-per-connection web servers? | /r/rust | 2023-04-22

    I've written many things using Iron and it's been fine. It's not particularly developed any more but I am not aware of any major outstanding issues.

  • Tide

    Fast and friendly HTTP server framework for async Rust

    Project mention: Latest Zen Kernel...... | /r/linuxmemes | 2023-05-26

    Rust has several, production ready, REST API frame works.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • Seed

    A Rust framework for creating web apps

    Project mention: Yew alternatives | /r/learnrust | 2023-06-13

    Practically every Rust web frontend I've seen takes a react-like approach, with "hooks" to store all of the state in. The now-abandoned Seed and Yew's struct components use a message-passing approach, where the state is stored as member variables on the struct representing the component that are updated based on messages dispatched by event handlers. There's also egui, which has a completely different paradigm that involves making the UI from scratch every frame based on the app's current state. It's not a web framework the same way as the others, but it can draw its UI to a web canvas just fine.

  • stdweb

    A standard library for the client-side Web

  • Nickel

    An expressjs inspired web framework for Rust

    Project mention: Announcing Nickel 1.0, a configuration language written in (and usable from) Rust | /r/rust | 2023-06-08

    There's a popular web framework called Nickel already: https://nickel-org.github.io/

  • loco

    🚂 🦀 The one-person framework for Rust for side-projects and startups

    Project mention: Prodzilla: From Zero to Prod with Rust and Shuttle | dev.to | 2024-02-21

    Moreover, I especially like where Rust is right now in the web space. It really feels like there’s a lot of smart people working on the next generation of web development tools - it feels like the place to be. There are a range of great open-source web dev tools that are just reaching critical levels of maturity. Axum, which I used to build Prodzilla, feels ready for out of the box web dev, and is crazy-performant, as I write about later. More recently available is Loco, a Rails-like framework for building web applications in Rust that's picking up steam. And in dev-tooling and hosting there’s Shuttle, a 1-line hosting solution for Rust backends.

  • percy

    Build frontend browser apps with Rust + WebAssembly. Supports server side rendering.

  • Gotham

    A flexible web framework that promotes stability, safety, security and speed.

    Project mention: Top Rust Web Frameworks: Rocket, Actix-web, Tide, Warp, and Gotham | dev.to | 2023-06-14

    Gotham Gotham, Rust's flexible web framework, is a trustworthy ally for developers looking for safety, security, and extensibility in their web applications. Gotham provides developers with a solid foundation for building secure and efficient web solutions, thanks to its powerful routing system and support for asynchronous request handling. Gotham helps developers avoid common pitfalls and ensures code integrity by prioritizing safety. Its extensible design makes it simple for developers to customize and enhance their applications, making Gotham an excellent choice for projects requiring flexibility and a focus on security.

  • tungstenite-rs

    Lightweight stream-based WebSocket implementation for Rust.

  • ureq

    A simple, safe HTTP client

    Project mention: Thermostat Control for Ecobee | /r/rust | 2023-05-29

    I also enjoyed using ureq as an http client.

  • ws-rs

    Lightweight, event-driven WebSockets for Rust.

  • cargo-web

    A Cargo subcommand for the client-side Web

  • Rouille, Rust web server middleware

    Web framework in Rust (by tomaka)

    Project mention: Rouille, a Rust web micro-framework | news.ycombinator.com | 2023-12-29
  • curl-rust

    Rust bindings to libcurl

    Project mention: Hurl 3.0.0, run and test HTTP requests with plain text and curl | /r/rust | 2023-05-06

    Under the hood, Hurl uses curl with Rust bindings (thanks to the awesome curl-rust crate)

  • tiny-http

    Low level HTTP server library in Rust

  • Sapper

    A lightweight web framework built on hyper, implemented in Rust language. (by miketang84)

  • Rustless

    REST-like API micro-framework for Rust. Works with Iron.

  • jsonschema

    JSON Schema validation library

    Project mention: web service framework and OpenAPI spec | /r/rust | 2023-03-24

    Checkout this crate https://crates.io/crates/jsonschema

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

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 2024-02-21.

Rust Web programming related posts

Index

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

Project Stars
1 Rocket 23,122
2 actix-web 19,925
3 hyper 13,644
4 gutenberg 12,485
5 reqwest 8,835
6 Iron 6,122
7 Tide 4,916
8 Seed 3,784
9 stdweb 3,431
10 Nickel 3,029
11 loco 2,893
12 percy 2,230
13 Gotham 2,217
14 tungstenite-rs 1,673
15 ureq 1,524
16 ws-rs 1,439
17 cargo-web 1,095
18 Rouille, Rust web server middleware 1,051
19 curl-rust 984
20 tiny-http 939
21 Sapper 621
22 Rustless 614
23 jsonschema 433
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com