5 releases
0.2.0-alpha.6 | Jan 9, 2025 |
---|---|
0.2.0-alpha.5 | Jan 5, 2025 |
0.2.0-alpha.4 | Dec 29, 2024 |
0.2.0-alpha.3 | Sep 9, 2024 |
0.2.0-alpha.2 | Sep 4, 2024 |
#489 in HTTP client
656 downloads per month
Used in 12 crates
(11 directly)
305KB
7K
SLoC
🦙 Rama (ラマ) is a modular service framework for the 🦀 Rust language to move and transform your network packets. The reasons behind the creation of rama can be read in the "Why Rama" chapter.
rama-core
async fn serve(&self, Context<S>, Request) -> Result<Response, Error>
Crate used by the end-user rama
crate and rama
crate authors alike.
Learn more about rama
:
- Github: https://github.com/plabayo/rama
- Book: https://ramaproxy.org/book/
rama service
Heavily inspired by tower-service and the vast Tokio ecosystem which makes use of it.
Initially the goal was to rely on tower-service
directly, but it turned out to be
too restrictive and difficult to work with, for the use cases we have in Rama.
See https://ramaproxy.org/book/faq.html for more information regarding this and more.
Dependencies
~4–32MB
~445K SLoC