Build With Rama

Rama is a modular service framework for Rust that helps you build proxies, web servers, and HTTP clients with full control over your network stack.

Use Rama as a Rust framework inside your own codebase, or run the Rama CLI as a standalone network tool for inspection, scraping, debugging, and automation. If you need help designing, integrating, or operating Rama based systems, we also offer professional services and service contracts.

Built for Modularity

Rama is built around a service model where services are fallible async methods that can be stacked, branched, and composed. You can wire together transport, TLS, HTTP, proxy logic, and telemetry as a set of reusable building blocks instead of a single large framework.

You can keep using your existing HTTP or TLS stack, such as curl or OpenSSL, and attach Rama only where you need it. Or you can start from the built in Rama services and swap out parts of the stack as your needs grow.

If you are a developer, you get a composable toolkit for building proxies, servers, and clients that fit your codebase. If you are an organisation, you can treat Rama as a platform component and rely on our professional services for design, integration, and long term maintenance.

Our built in services are intentionally minimal, which makes them easy to extend or modify. The entire codebase is open for you to use as inspiration, adapt to your own environment, or harden for production workloads.

Framework Properties

🚦 Proxies

Build powerful network proxies including reverse proxies, TLS termination proxies, HTTP(S) proxies, SOCKS5 proxies, MITM proxies, and distortion proxies. Perfect for load balancing, security, and network analysis.

🌐 Web Services

Create high-performance web servers, REST APIs, and static content servers. Built on Tokio for maximum performance and reliability.

πŸ§‘β€πŸ’» HTTP Clients

Build sophisticated HTTP clients with user-agent emulation, proxy support, and advanced request/response handling. Perfect for web scraping and API interactions.

πŸ”Œ Modular Architecture

Pick and choose components from TCP/UDP to HTTP and TLS. Build your perfect stack with Rama's service-oriented architecture.

πŸ“Š Telemetry

Built-in support for tracing and metrics using tracing and OpenTelemetry. Monitor and debug your services with ease.

πŸ” Fingerprinting

Advanced fingerprinting capabilities for HTTP and TLS layers to help with emulation and security testing.

πŸš€ Async-First

Built from the ground up with asynchronous programming in mind, Rama uses Tokio as its one and only runtime for maximum performance and concurrency.

πŸ›‘οΈ Type-Safe

Leverage Rust's powerful type system to build robust and maintainable network services. Catch errors at compile time.

πŸ“¦ Binary

Download and use Rama as a standalone binary CLI tool. No need to build from source or integrate into your Rust project to benefit from Rama's capabilities.

Get Started with Rama

Choose your preferred installation method. Either add Rama as a framework dependency to your Rust project for maximum flexibility and control, or install the pre-built Rama CLI binary for immediate use as a standalone tool without writing code:

Add Rama as a dependency to your Rust project
Install Rama CLI using curl
Install Rama CLI from source

Batteries Included

Transports

HTTP

Web Server

TLS

DNS

Proxy Protocols

Web Protocols

Async-Method Trait Services

Telemetry

Diagnostics

Upstream Proxies

User Agent (UA)

Fingerprinting

Utilities

Graphical Interface

  • πŸ—οΈTraffic Logger 2
  • πŸ—οΈTUI Implementation 2
  • ❌Traffic Intercept 3
  • ❌Traffic Replay 3

Binary

Data Scraping

  • πŸ—οΈHtml Processor 2
  • ❌Json Processor 3

Browser

  • ❌JS Engine 3
  • ❌Web API  Emulation 3

πŸ—’οΈ Footnotes

Supported by

Partnership

Rama is a project of Plabayo, offering professional services and partnership opportunities for organizations looking to integrate or extend Rama in their infrastructure. We provide service contracts for custom development, integration support, and maintenance of Rama-based solutions.

For partnership inquiries, please contact us at partner@ramaproxy.org or become a business sponsor to help sustain our work, request features and get some of the benefits of a commercial partner.

πŸŽ™οΈ If you like Rama, you might also like Netstack.FM

Netstack.FM is a podcast about networking, Rust, and everything in between β€” exploring the stack from protocols and packet flows to the people and projects building the modern internet.

Visit Netstack.FM for more information about the podcast and all its episodes.

Created by Plabayo β€” the company behind Rama.