FastAPI arq Dashboard
Run arq inside a FastAPI app and you have working background jobs. Run arq with z4j and you also have a dashboard, persistent history, the task controls this adapter can execute safely, scheduler integration, RBAC with invitations, and a tamper-evident audit log. z4j is one container or one Python process; the agent is one pip extra in your existing FastAPI venv.
FastAPI + arq is the async-native pairing we recommend. arq's Redis-only deploy footprint stays tiny, FastAPI's lifespan hook starts and stops the worker cleanly, and z4j-fastapi's lifespan integration ships the agent under the same primitive. Quickstart is two lines: pip install and a lifespan kwarg.
Install z4j alongside FastAPI + arq
1. Install the brain
pip install z4j && z4j serve First boot prints a setup URL to stderr. Open it, create the first admin, and mint a token + HMAC secret for this agent.
2. Add the agent to your FastAPI venv
pip install z4j-fastapi[arq] 3. Wire it into FastAPI
from fastapi import FastAPI
from z4j_fastapi import z4j_lifespan
app = FastAPI(lifespan=z4j_lifespan()) What you get
- Persistent arq task history in Postgres or SQLite
- Adapter-advertised controls: submit_task, cancel_task (Job.abort)
- Scheduler integration via arq cron; available controls depend on that scheduler adapter
- RBAC with invitations and password reset
- HMAC-chained tamper-evident audit log
- Notifications: email, Slack, Telegram, webhook
z4j-fastapi and z4j-arq are Apache 2.0. Importing them into your FastAPI app does not affect your application's licensing. z4j is AGPL-3.0-or-later, isolated in its own process.
What the dashboard can actually do
Native actions
-
submit_task -
cancel_task (Job.abort)
Event capture
attach_to_worker_settings() chains onto on_job_start / on_job_end; it must be attached for lifecycle capture.
Reconciliation
arq.jobs.Job.status() + result_info(): clean deferred/queued/in_progress/complete mapping.
FastAPI with a different engine
FastAPI Celery Dashboard
The industry standard, covered end-to-end.
FastAPI RQ Dashboard
Lightweight Redis queue, fully instrumented.
FastAPI Dramatiq Dashboard
Middleware-driven Dramatiq observability.
FastAPI Huey Dashboard
Lightweight Redis/SQLite queue, first-class.
FastAPI taskiq Dashboard
Broker-agnostic async task framework.
Same engine, different framework
Start using FastAPI arq Dashboard
Self-hosted, open source, no SaaS, no telemetry. z4j runs anywhere Python or Docker runs.