salvo-routing
Installation
SKILL.md
Salvo Routing
Salvo treats path, method, and custom conditions uniformly as filters. Routers are composable (push), reusable across multiple mount points, and share middleware with handlers via hoop().
Path parameters
Salvo uses {name} syntax (since v0.76; the older <name> form is removed).
Router::with_path("users").get(list_users) // static
Router::with_path("users/{id}").get(show_user) // basic param
Router::with_path("users/{id:num}").get(show_user) // typed: num, i32, i64, u32, u64
Router::with_path(r"users/{id|\d+}").get(show_user) // regex
Router::with_path("files/{*rest}").get(serve_file) // single segment wildcard
Router::with_path("static/{**path}").get(serve_static) // multi-segment wildcard
Access in a handler via req.param::<T>("name") which returns Option<T>: