Welcome to the Rusty Beam developer documentation. This section provides in-depth technical information for developers who want to understand, extend, or contribute to Rusty Beam.
New to Rusty Beam development? Start with the Architecture Overview to understand the system design, then move on to the Plugin Development Guide to build your first plugin.
Deep dive into Rusty Beam's architecture, including:
Essential reading for understanding how Rusty Beam works under the hood.
Complete guide to creating Rusty Beam plugins:
Everything you need to extend Rusty Beam with custom functionality.
Rusty Beam processes every request through a configurable pipeline of plugins. Each plugin can:
Built on Tokio and Hyper, Rusty Beam is fully asynchronous. All I/O operations are non-blocking, enabling high concurrency with low resource usage.
Following the DOM-Aware Server philosophy, even server configuration is HTML. This enables:
# Install Rust (latest stable)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Clone the repository
git clone https://github.com/jamesaduncan/rusty-beam.git
cd rusty-beam
# Build the project
cargo build --release
# Build all plugins
./build-plugins.sh
# Run all tests
./run_all_tests.sh
# Run specific test suites
cargo test # Unit tests
./run_hurl_tests.sh # Integration tests
./run_plugin_tests_isolated.sh # Plugin tests
cargo fmt
)cargo clippy
to catch common mistakes./run_all_tests.sh
cargo flamegraph
criterion
for benchmarking