Skip to content

Web Dashboard

A real-time monitoring and management UI for your Conveyor job queues. Ships as three packages:

  • @conveyor/dashboard -- the full dashboard (API + embedded UI)
  • @conveyor/dashboard-api -- headless REST API only
  • @conveyor/dashboard-client -- typed HTTP + SSE client for the API

Features

  • Real-time updates -- SSE-powered live view of job state changes across all queues
  • Queue management -- pause, resume, drain, clean, and obliterate queues
  • Job detail -- inspect payload, options, attempt history, stacktraces, and progress
  • Flow visualization -- browse parent/child job trees
  • Metrics charts -- throughput sparklines and per-queue metrics (minute/hour granularity)
  • Command palette -- Cmd+K search for jobs by ID, queues by name, or payloads
  • Group monitoring -- per-group active/waiting counts
  • Bulk operations -- retry all failed jobs, promote all delayed jobs
  • Read-only mode -- disable all mutation endpoints with a single flag
  • Auth hook -- plug in JWT, basic auth, or any custom auth logic
  • Custom base path -- mount the dashboard under any URL prefix

Quick Start

sh
deno add jsr:@conveyor/dashboard jsr:@conveyor/store-memory
sh
npx jsr add @conveyor/dashboard @conveyor/store-memory
sh
pnpm dlx jsr add @conveyor/dashboard @conveyor/store-memory
sh
bunx jsr add @conveyor/dashboard @conveyor/store-memory
typescript
import { createDashboardHandler } from '@conveyor/dashboard';
import { MemoryStore } from '@conveyor/store-memory';

const store = new MemoryStore();
await store.connect();

const dashboard = createDashboardHandler({ store });

Deno.serve({ port: 3000 }, (req) => dashboard(req));
// Open http://localhost:3000

TIP

Use the same store instance for your Queue, Worker, and the dashboard so it sees all jobs in real time.

Screenshots

Queue Overview

The home page shows all queues with job counts, state distribution, sparkline throughput, and scheduled job indicators.

Dashboard Home

Queue Detail

Drill into a queue to see jobs by state, with bulk selection, cron/repeat/flow/child/group tags, and inline metrics.

Queue Detail

Job Detail

Inspect a job's payload, options, return value, per-attempt logs and stacktraces, and timeline metadata.

Job Detail

Metrics

Throughput bar charts and processing time area charts with time range selector (1h to 30d).

Metrics

Flows

Browse parent/child job flows with active and completed tabs.

Flows

Flow Detail

Two-column view with flow tree on the left and selected job detail on the right. Progress ring shows completion status.

Flow Detail

Next Steps

Released under the MIT License.