OSS TanbouSign in with GitHub

build Rust web services with HTTP/1-3, OpenAPI, WebSockets, and integrated TLS features

OSS scale score 224.5OSS health 100
About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
4,438
Primary language
Rust
License
Apache-2.0
Repository last updated
Oct 4, 2026
On this page

Overview

Salvo is a Rust web framework combining function-based handlers and tree routing with HTTP/1, HTTP/2, HTTP/3, OpenAPI, WebSockets, WebTransport, and ACME-based TLS support.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

Compose endpoints from handlers and tree-based routing

Async functions become endpoints through handler macros, while the Router composes paths and middleware as a tree. Middleware follows the same handler model, simplifying route-scoped cross-cutting behavior.

Sources: [2]

Extend services with OpenAPI, WebSockets, HTTP/3, and automatic TLS

Salvo offers optional OpenAPI documentation, WebSocket and WebTransport support, HTTP/3, and ACME certificate management on top of Hyper and Tokio.

Sources: [2][3]

Best fit

Fits Rust backends wanting API, realtime, protocol, and TLS features in one framework

It works well when REST/JSON APIs, OpenAPI, realtime connections, HTTP/3, and TLS termination need to live within a single application framework.

Sources: [2]

Before adoption

Check Rust 1.94+ and the exact protocol/TLS feature combination

Salvo 1.0.1 requires Rust 1.94. The 1.0.1 release fixes HTTP/1-only builds, QUIC handshakes, and OpenTelemetry examples, making feature-specific build and integration tests important.

Sources: [3][4]

Official sources

  1. [1]salvo-rs/salvo — GitHub repository(2026-10-06)
  2. [2]Salvo 1.0.1 — README(2026-10-06)
  3. [3]Salvo 1.0.1 — Cargo.toml(2026-10-06)
  4. [4]Salvo 1.0.1 release(2026-10-06)
Supplemental curator note

Salvo combines a simple handler/middleware model with a broad protocol surface including HTTP/3, OpenAPI, and ACME. Keep the enabled feature set limited to the protocols and integrations your service actually needs.

Try it in 3 steps

  1. 1

    Clone the reviewed Salvo release

    Clone Salvo 1.0.1 and enter the official examples workspace. Rust 1.94 or newer is required.

    git clone --depth 1 --branch v1.0.1 https://github.com/salvo-rs/salvo.git && cd salvo/examples
  2. 2

    Start the Hello example

    Run the official Hello server, which listens for HTTP requests on 0.0.0.0:8698.

    cargo run -p example-hello
  3. 3

    Check the HTTP response

    Send a request from another terminal and confirm that Hello World is returned.

    curl -fsS http://127.0.0.1:8698/
Check the official README

Growth

Growth trends · Last 30 days

4,438 Stars

Trend data is still being collected.

Built with

Categories and tags

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • async
  • framework
  • http-server
  • rust
  • salvo
  • web
Stars
4,438
Forks
272
Watchers
38
Open issues
23
Contributors
94
Owner type
Organization
Primary language
Rust
License
Apache-2.0
Repository last updated
Oct 4, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?