| Crates.io | feather-runtime |
| lib.rs | feather-runtime |
| version | 0.4.0 |
| created_at | 2025-04-20 12:10:26.138909+00 |
| updated_at | 2025-07-08 20:19:19.594864+00 |
| description | Web Server Runtime for Feather |
| homepage | |
| repository | |
| max_upload_size | |
| id | 1641663 |
| size | 56,831 |
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 spaghetti. Here’s the gist:
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.