Local Development
Contributor-focused local setup with fast authless mode or a full seeded stack.
If you are self-hosting for the first time, start with Installation.
This page is optimized for local contributor workflows.
Prerequisites
- Bun
1.3+ - Redis (local or remote)
- Optional: Docker (for Postgres + Redis local stack)
Path A: Fast Local Run (Authless + Env Connections)
This is the fastest onboarding path and avoids full auth setup.
bun install
bun run dev:authless
dev:authless defaults:
DURABULL_AUTHLESS=trueDURABULL_ENV_CONNECTIONS=trueDURABULL_REDIS_URL_MAINfromREDIS_URLorredis://localhost:6379DURABULL_REDIS_URL_DEFAULT=MAIN
App URLs:
- API:
http://localhost:3001/api - Web:
http://localhost:5173
Security note:
- Authless mode disables login and identity checks.
- Do not expose authless mode directly to the public internet.
Path B: Full Local Stack (Postgres + Redis + Seeded Data)
- Start infrastructure:
bun docker
If another local Postgres container already uses Durabull's default host port, set
DURABULL_POSTGRES_PORT in your .env (for example 55433) and keep
DATABASE_URL on the same port.
- Seed realistic development data:
bun docker:seed
Optional worker simulation:
bun docker:seed:workers
- Run app services:
bun run dev
Local Validation Checklist
/api/healthreturnsstatus: ok/api/modereturns expected auth/connection/persistence mode- Connections list loads in UI
- Queues page shows discovered queues
- Scheduled jobs/workers/redis explorer all load without API errors
Resetting Local Data
- Wipe seeded state:
bun docker:wipe
- Re-seed from scratch:
bun docker:seed
Screenshot placeholder: terminal session of dev:authless and first dashboard load.
Video placeholder: local bootstrap from clone to first queue inspection.