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 thetokio
runtime.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.tracing
is used for context-rich application logging. Our complete stack emits tracing events that can be consumed via multiple different subscribers.snafu
for 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>