Dashboard
queueDashboard() mounts the bull-board
UI — active, waiting, delayed, and failed jobs, with retry and delete —
on Warlock’s Fastify server.
Install and mount
Section titled “Install and mount”npm install @bull-board/api @bull-board/fastifyimport { getHttpServer } from "@warlock.js/core";import { queueDashboard } from "@warlock.js/queue";
await queueDashboard(getHttpServer(), { basePath: "/admin/queues" });Call it before the server starts listening.
Options
Section titled “Options”| Option | Default | Notes |
|---|---|---|
| basePath | "/admin/queues" | URL prefix the UI is mounted on |
| queues | every queue with a registered job, plus the default queue | pass to show a specific subset |
Optional peers
Section titled “Optional peers”@bull-board/api and @bull-board/fastify are optional peer
dependencies, loaded with a dynamic import() only when
queueDashboard() is actually called — installing @warlock.js/queue
alone does not pull them in. A missing one throws
QueueDashboardDependencyError naming the package to install.
Protect it yourself
Section titled “Protect it yourself”The dashboard has no authentication of its own, and it can retry and
delete jobs. Put it behind your app’s own auth (a middleware on the
route, an IP allowlist, a reverse-proxy rule) — queueDashboard() does
not add one for you.