lightshuttle_control/lib.rs
1//! Local HTTP control plane and dashboard for LightShuttle.
2//!
3//! This crate hosts the developer-facing control surface that runs
4//! alongside the orchestrator: a REST API, a WebSocket log stream and
5//! an SSR dashboard served on `127.0.0.1`. CLI subcommands such as
6//! `lightshuttle restart` are thin clients of the same endpoints.
7//!
8//! At v0.2.0 this crate exposes `GET /healthz` plus REST endpoints
9//! under `/api/resources*`; subsequent PRs land the WebSocket log
10//! channel, the restart endpoint and the dashboard.
11
12pub use crate::error::{ApiError, ApiErrorBody};
13pub use crate::metrics::{Metrics, observe_event_duration};
14pub use crate::server::{ControlServer, bind};
15pub use crate::state::ControlState;
16
17mod error;
18mod metrics;
19mod routes;
20mod server;
21mod state;