Like all our software, the stackable-cockpitd server is written in Rust. The server internally uses the stackable-cockpit library
and exposes functionality via an HTTP REST API. Core community-provided dependencies are:
tokio, the async runtime, which ised used to handle incoming network requests over HTTP/TCP.axum, a HTTP framework for building REST APIs. It is based on thetokioruntime.utoipa, a proc-macro/derive-based OpenAPI spec generator that nicely integrates withaxum.clap, a powerful command line argument parser that powers the CLI interface.tracingis used for context-rich application logging. Our complete stack emits tracing events that can be consumed via multiple different subscribers.snafufor easy custom error handling.
The Stackable UI is bundled into the final binary during the build process. The source code for the front end is located in web. Detailed information about the frontend stack can be found in the README.
cargo run -p stackable-cockpitd -- <ARGS>cargo build -p stackable-cockpitd --release # or --debug
./target/release/stackable-cockpitd <ARGS>