rama 0.2.0

modular service framework
Documentation
# Introduction to rama

<div class="book-article-intro">
    <img src="./img/rama_intro.jpeg" alt="llama teaching a class of crabs">
    <div>
        🦙 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 <a href="/why_rama.html">the "Why Rama" chapter</a>.
        In this chapter we'll start to dive deeper into the architecture, design and philosophy behind rama.
        At the end of this chapter you should know enough in order to start diving into
        <a href="https://github.com/plabayo/rama/tree/main/examples">the examples found in the `/examples` dir</a>.
    </div>
</div>

In case you want to use Rama to build a proxy service but are new to proxy technology you might want to read the
[introduction to proxies chapter](./proxies/intro.md) first.

And of course as a reminder, if you want to use Rama but are still learning Rust you can use  "[the free Rust 101 Learning Guide](https://rust-lang.guide/)" as your study companion. Next to that, [Glen](mailto:glen@plabayo.tech) can also be hired as a mentor or teacher to give you paid 1-on-1 lessons and other similar consultancy services. You can find his contact details at <https://www.glendc.com/>.

## Index

- [🗼 Services all the way down 🐢]./intro/services_all_the_way_down.md
- [Service Stack]./intro/service_stack.md
- [🍔 Middlewares and ☘️ Leaf Services]./intro/terminology.md
- [Network Layers]./intro/network_layers.md
- [☀️ Context<State>]./intro/context.md
- [🧱 Modular]./intro/modular.md
- [🚚 Dynamic Dispatch]./intro/dynamic_dispatch.md
- [🚫 Errors]./intro/errors.md
- [🧘 Zen of Services]./intro/service_zen.md
- [🔭 Telemetry]./intro/telemetry.md
- [👤 User Agent]./intro/user_agent.md