A Phoenix LiveView dashboard for monitoring PgFlow workflow execution.
PgFlowDashboard provides real-time visibility into workflow execution with a read-only, security-first approach.
Features
- Real-time overview of workers, runs, and queue depth
- Detailed run inspection with step states and task details
- Flow visualization with dependency graphs
- Worker health monitoring
- GitHub-style run history grid
Installation
Add the dashboard to your router:
defmodule MyAppWeb.Router do use MyAppWeb, :router
import PgFlowDashboard.Router
scope "/" do
pipe_through [:browser] pgflow_dashboard "/pgflow", repo: MyApp.Repo, pubsub: MyApp.PubSub, auth_handler: MyAppWeb.PgFlowAuthend end
Ensure the standard PgFlow migration has run:
mix pgflow.setup mix ecto.migrate
The dashboard reads the PgFlow schema through typed core APIs; it does not
require a separate dashboard migration. Historical PgFlowDashboard.Migration
views and functions may remain installed for compatibility with external SQL
consumers.
Configuration Options
See PgFlowDashboard.Config for all available options.
Summary
Functions
Returns the child specification for starting PgFlowDashboard's supervision tree.
Returns the current version of PgFlowDashboard.
Functions
Returns the child specification for starting PgFlowDashboard's supervision tree.
This allows adding PgFlowDashboard to your application's supervision tree:
children = [
# ... other children
PgFlowDashboard
]Or with options:
{PgFlowDashboard, name: MyApp.PgFlowDashboardSupervisor}
@spec version() :: String.t()
Returns the current version of PgFlowDashboard.