Rust web framework comparison
A comparison of some web frameworks written in Rust.
This overview only contains frameworks that work on stable Rust.
Table of Contents
Frontend frameworks (WASM)
Since WASM support is available in most browsers we can use Rust to build web applications :)
| Name | Stars | Contributors | Activity | Downloads | Virtual DOM | SSR | Rendering | Architecture | Repo | Docs | License | Version |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Dioxus | 794.2k | yes | yes | HTML | React/Redux | |||||||
| egui | 10158.5k | no | no | Canvas | ImGUI | |||||||
| Leptos | 1827.9k | no | yes | HTML | FRP | |||||||
| natrix | 1.8k | no | HTML | FRP | ||||||||
| sauron | 464.1k | yes | yes | HTML | TEA | |||||||
| Silkenweb | 16.4k | no | yes | HTML | FRP | |||||||
| Sycamore | 236.8k | no | yes | HTML | FRP | |||||||
| Vizia | 5.1k | no | no | Canvas |
Outdated frontend frameworks
| Name | Stars | Contributors | Activity | Downloads | Virtual DOM | SSR | Rendering | Architecture | Repo | Docs | License | Version |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| dodrio | 181.8k | |||||||||||
| dominator | 276.7k | no | no | HTML | FRP | |||||||
| draco | 5.9k | |||||||||||
| dumle | - | |||||||||||
| frender | 6.4k | yes | no | |||||||||
| Iced | 1247.9k | no | no | Canvas | TEA | |||||||
| Kobold | 17.8k | no | HTML | React/Redux | ||||||||
| mika | 1.9k | |||||||||||
| mogwai | 52.2k | no | yes | HTML | ||||||||
| MoonZoon | - | no | no | HTML | FRP | |||||||
| percy | 48.8k | yes | yes | HTML | ||||||||
| ruukh | 5.7k | |||||||||||
| Seed | 381.2k | yes | no | HTML | TEA | |||||||
| smithy | 13.6k | |||||||||||
| spair | 11.5k | no | no | HTML | ||||||||
| squark | 24.1k | |||||||||||
| stdweb | 14094.7k | |||||||||||
| willow | - | |||||||||||
| yew | 3355.7k | yes | yes | HTML | React/Redux |
Server frameworks
High-Level Server Frameworks
| Name | Stars | Contributors | Activity | Repo | Docs | License | Version | Async | HTTPS | HTTP/2 | Base | Client |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| actix-web | yes | yes | yes | tokio | no | |||||||
| axum | yes | yes | yes | hyper | no | |||||||
| cot | yes | yes | yes | tokio | no | |||||||
| loco | yes | yes | yes | tokio | no | |||||||
| ntex | yes | yes | yes | ntex-rt | yes | |||||||
| Ohkami | yes | various runtimes | no | |||||||||
| Poem | yes | yes | yes | hyper | no | |||||||
| rocket | yes | yes | yes | hyper | no | |||||||
| salvo | yes | yes | yes | hyper | no | |||||||
| trillium | yes | yes | no | tokio | no | |||||||
| Viz | yes | yes | yes | hyper | no | |||||||
| wtx | yes | yes | yes | wtx | yes | |||||||
| zino | yes |
Low-Level Frameworks
| Name | Stars | Contributors | Activity | Repo | Docs | License | Version | Async | HTTPS | HTTP/2 | Base | Client |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| actix-http | yes | yes | yes | yes | ||||||||
| hyper | yes | yes | yes | yes | ||||||||
| xitca-web | yes |
Outdated server frameworks
| Name | Stars | Contributors | Activity | Repo | Docs | License | Version | Async | HTTPS | HTTP/2 | Base | Client |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| cargonaouts | ||||||||||||
| civet | ||||||||||||
| conduit | ||||||||||||
| gotham | yes | yes | no | hyper | no | |||||||
| graphul | yes | yes | yes | hyper | no | |||||||
| hydrogen | ||||||||||||
| iron | ||||||||||||
| kinglet | ||||||||||||
| nickel | ||||||||||||
| rouille | no | yes | no | |||||||||
| rustful | ||||||||||||
| rustless | ||||||||||||
| sappers | ||||||||||||
| shio | ||||||||||||
| solicit | ||||||||||||
| Thruster | yes | yes | yes | tokio (or hyper) | no | |||||||
| Tide | yes | yes | no | async-std | no | |||||||
| tiny-http | no | yes | no | no | ||||||||
| tk-http | ||||||||||||
| tower-web | ||||||||||||
| warp | yes | yes | yes | hyper | no |
Client frameworks
To build web clients with Rust, you can choose between these libraries:
- reqwest (- / repository / documentation)
- awc (- / repository / api docs)
- hyper (homepage / repository / documentation)
- jsonrpc (- / repository / documentation)
Outdated client frameworks
Templating
| Name | Repo | Docs | License | Version | Stars | Contributors | Activity |
|---|---|---|---|---|---|---|---|
| askama | |||||||
| handlebars | |||||||
| liquid | |||||||
| maud | |||||||
| minijinja | |||||||
| ructe | |||||||
| sailfish | |||||||
| srtemplate | |||||||
| tera | |||||||
| UIBeam |
Outdated templating libraries
| Name | Repo | Docs | License | Version | Stars | Contributors | Activity |
|---|---|---|---|---|---|---|---|
| horrorshow | |||||||
| markup | |||||||
| mustache | |||||||
| stpl | |||||||
| tinytemplate | |||||||
| typed-html |
Websocket Libraries
| Name | Repo | Docs | License | Version | Stars | Contributors | Activity | Client | Server | Async |
|---|---|---|---|---|---|---|---|---|---|---|
| actix-web | yes | yes | yes | |||||||
| mews | no | yes | yes | |||||||
| Ohkami | no | yes | yes | |||||||
| tokio-tungstenite | yes | yes | yes | |||||||
| tungstenite | yes | yes | yes | |||||||
| ws-rs | yes | yes | yes | |||||||
| wtx | yes | yes | yes |