| Crates.io | maw |
| lib.rs | maw |
| version | 0.18.1 |
| created_at | 2025-11-02 06:17:47.166388+00 |
| updated_at | 2026-01-23 16:20:29.490133+00 |
| description | A simple and efficient web framework for Rust. |
| homepage | |
| repository | https://github.com/Srlion/maw |
| max_upload_size | |
| id | 1912718 |
| size | 141,463 |
A minimal, fast web framework for Rust built on Hyper.
use maw::prelude::*;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut app = App::new();
let router = Router::new().get("/", async |c: &mut Ctx| {
c.res.send("Hello, world!");
Ok(())
});
// to have it with middlewares, can be done like this:
let router = Router::new()
.middleware(async |c: &mut Ctx| {
c.next().await;
})
.get("/", async |c: &mut Ctx| {
c.res.send("Hello, world!");
Ok(())
});
// or
let router = Router::new().get(
"/",
(
async |c: &mut Ctx| {
c.next().await;
},
async |c: &mut Ctx| {
c.res.send("Hello, world!");
Ok(())
},
),
);
app.router(router).listen("127.0.0.1:3000").await?;
Ok(())
}
MIT