Flow UI (resuma-flow)

Server-rendered ops widgets for graphs, events, and controls. Add resuma-flow as a path dependency in the monorepo, or copy components into your app.

LIVE

resuma-flow widgets

Real resuma-flow widgets on this server — ops cards poll exec_status. For the full execution panel (graph, controls, SSE stream), use the Resuma OS overview demo.

Ops dashboard

flow_dashboard_poll(5000, Some(exec_status()))

Resuma OS

healthy · uptime 30h 30m

Workers

1

Graphs running

1

Graphs paused

0

Queue pending

0

Processing

1

Scheduler due

0

Workers

docs_showcase

Queues

NamePendingActiveDoneFailedLoad
default0000
docs0118050

Scheduler

1 enabled · 1 total · 0 due now

Other widgets: flow_graph_auth, event_stream_auth, flow_execution_panel_auth — mounted dynamically after FlowEngine::start. See Resuma OS live demo.

Cargo.toml

[dependencies]
resuma = "1.0.2"
resuma-flow = { path = "../resuma-flow" }  # monorepo
tokio = { version = "1", features = ["full"] }

Ops dashboard

use resuma::prelude::*;
use resuma_flow::{flow_dashboard_poll, flow_styles_link};

#[component]
fn OpsPage(initial: ExecStatus) -> View {
    view! {
        <main>
            {flow_styles_link()}
            {flow_dashboard_poll(5000, Some(initial))}
        </main>
    }
}

Live graph + controls

use resuma_flow::{flow_execution_panel_auth, flow_styles_link};

// access_token from StartWorkerResponse — scopes SSE + pause/resume/cancel
// Pair flow_styles_link() in layout with panel_auth for dynamic injection.
view! {
    {flow_styles_link()}
    {flow_execution_panel_auth(&graph_id, true, Some(access_token))}
}

Components

ComponentPurpose
flow_dashboard_pollOps metrics cards (polls exec_status)
flow_graph_authNode status pills + live refresh
event_stream_authSSE event timeline
worker_panel_authPause / Resume / Cancel / Replay
flow_execution_panel_authPanel without inline styles (dynamic HTML + flow.css)
flow_styles_linkLink to GET /_resuma/flow.css (CSP-safe)
flow_ops_pageAll-in-one ops layout

Client runtime

Widgets mount via runtime/src/flow.ts — included when you serve Flow apps. Graph mutations send x-resuma-csrf and graph tokens on same-origin requests.

← Tools · Exec security →