| Crates.io | feather-runtime |
| lib.rs | feather-runtime |
| version | 0.5.2 |
| created_at | 2025-04-20 12:10:26.138909+00 |
| updated_at | 2025-12-16 18:29:03.458136+00 |
| description | Web Server Runtime for Feather |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1641663 |
| size | 64,209 |
Hi! Feather Runtime is the engine that powers Feather. I built it because I wanted a web server that feels as simple as writing synchronous Rust, but can still handle thousands of connections without breaking a sweat. If you’re tired of fighting with async/await or just want to see how far coroutines can take you in Rust, you’re in the right place.
It replaces tiny-http with a modern, coroutine-based runtime—no async/await required.
may crate, every connection gets its own coroutine (a green thread). This means you can handle a ton of traffic without your server falling over.BufReader and BufWriter for speed.socket2.I wanted something that “just works” for high concurrency, but doesn’t make you write async.
may). Coroutines are super lightweight, so you can have thousands running at once.socket2 to set backlog, nodelay, buffer sizes, etc.In summary:
Every request gets its own coroutine. You can spawn background tasks or run blocking code, and Feather-Runtime will keep things fast and responsive no async/await or lifetime headaches.
Here’s a minimal example of using Feather-Runtime directly (normally, you use it via Feather):
use feather_runtime::runtime::engine::Engine;
use feather_runtime::http::{Request, Response};
fn main() {
let engine = Engine::new("127.0.0.1:5050");
engine.start();
engine.for_each(|req: &mut Request| {
let mut res = Response::default();
res.send_text("Hello from Feather-Runtime!");
res
}).unwrap();
}
If you're contributing to Feather but don't want to mess with low-level server internals, you can mostly ignore this subcrate. Feather-Runtime is designed to handle the core HTTP processing while Feather itself provides higher-level abstractions. If you have a feature request or a problem, open an issue.
Feather-Runtime is MIT licensed. See LICENSE.