Plabayo Releases Rama 0.4 With WASM-Powered PAC Support
The modular Rust framework adds system-wide proxy configuration and expanded protocol support for production network services.
Plabayo has released Rama 0.4, introducing critical networking capabilities to its modular Rust framework for building network services. The update focuses on corporate environment compatibility and protocol flexibility, making the framework more viable for production-grade infrastructure.
The 0.4 release introduces the SystemProxyLayer, which provides out-of-the-box support for OS-level proxy settings. A significant addition is the support for Proxy Auto Configuration (PAC) via the rama-pac crate. To handle the execution of PAC files, Plabayo implemented rama-js, which runs JavaScript within a WASM runtime using wasmtime. This architecture ensures process isolation without requiring applications to bundle or manage separate OS processes.
Beyond proxying, the update expands Rama's protocol suite. The framework now supports ttRPC through the rama-ttrpc crate, offering a lightweight alternative to gRPC that runs over TCP. For developers already using gRPC, the new rama-grpc-macros allow for the generation of client and server code without the need to write .proto files. Additionally, the framework's HTTP Archive (HAR) exports have been upgraded to support WebSocket data, utilizing a streaming implementation to reduce memory buffering during the export process.
The Shift Toward Corporate Readiness
Rama is designed as a modular system where developers compose reusable building blocks for transport, TLS, HTTP, and telemetry. By adding system proxy and PAC support, Plabayo is positioning Rama as a foundation for professional network clients that must adhere to strict corporate networking policies. In many enterprise environments, traffic must be routed through specific proxies defined by the operating system or dynamic PAC files; without these features, a framework cannot be deployed in locked-down corporate infrastructures.
Isolation via WASM
The decision to use a WASM runtime for JavaScript execution marks a modern approach to stability and security. The team chose a WASM runtime to achieve the same isolation as a separate process without the overhead of bundling an external process into every Rama-based application. This allows the framework to execute potentially untrusted PAC scripts in a sandboxed environment while maintaining a single-process footprint.
Future Outlook
With the integration of ttRPC and enhanced gRPC macros, Rama is lowering the barrier for high-performance service communication. Developers can now choose between the robustness of gRPC and the lightness of ttRPC depending on their specific resource constraints. As the framework continues to evolve, the industry will be watching how Plabayo further leverages WASM for other modular extensions and whether additional transport layers are added to the ecosystem.