2 releases

0.2.0-alpha.3 Sep 9, 2024
0.2.0-alpha.2 Sep 4, 2024

#520 in HTTP client

Download history 148/week @ 2024-08-31 169/week @ 2024-09-07 76/week @ 2024-09-14 43/week @ 2024-09-21 46/week @ 2024-09-28 1/week @ 2024-10-05 35/week @ 2024-10-12 12/week @ 2024-10-19 11/week @ 2024-10-26 19/week @ 2024-11-02 1/week @ 2024-11-09 12/week @ 2024-11-16 19/week @ 2024-11-23 25/week @ 2024-11-30 38/week @ 2024-12-07

94 downloads per month
Used in 10 crates (9 directly)

MIT/Apache

290KB
6.5K SLoC

rama banner

Crates.io Docs.rs MIT License Apache 2.0 License rust version Build Status

Discord Buy Me A Coffee GitHub Sponsors Paypal Donation

🦙 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:

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
~473K SLoC