Expand description
Seesaw Insight - Real-time observability for Seesaw workflows
This crate provides real-time visualization and monitoring for Seesaw workflows through WebSockets, Server-Sent Events (SSE), and a web dashboard.
§Architecture
streammodule: Cursor-based reader forseesaw_streamtabletreemodule: Workflow causality tree builderwebsocketmodule: WebSocket support for real-time updateswebmodule: Axum server with SSE/WS endpoints and static file serving
§Usage
use seesaw_insight::web;
use seesaw_postgres::PostgresStore;
use sqlx::postgres::PgPoolOptions;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let pool = PgPoolOptions::new()
.max_connections(5)
.connect("postgres://localhost/seesaw")
.await?;
let store = PostgresStore::new(pool);
web::serve(store, "127.0.0.1:3000", Some("./static")).await?;
Ok(())
}Re-exports§
pub use stream::StreamEntry;pub use stream::StreamReader;pub use tree::EventNode;pub use tree::TreeBuilder;pub use web::app;pub use web::serve;