Overview
Storage adapters for @absolutejs/queue — a private workspace monorepo. Each adapter is published as its own package and depends on @absolutejs/queue; install only the one for your backend.
@absolutejs/queue-adaptersworkspacealphaData & SyncStorage adapters for @absolutejs/queue (Postgres, Redis, and more to come)
git clone https://github.com/absolutejs/queue-adapters.gitStorage adapters for @absolutejs/queue — a private workspace monorepo. Each adapter is published as its own package and depends on @absolutejs/queue; install only the one for your backend.
Adapter — Package — Backend — Status
postgres/ — @absolutejs/queue-postgres — Postgres (Drizzle, FOR UPDATE SKIP LOCKED) — ✅
sqlite/ — @absolutejs/queue-sqlite — SQLite — planned
redis/ — @absolutejs/queue-redis — Redis — ✅
Adapters share the JobStore contract from @absolutejs/queue. Keeping them in one workspace means a contract change can update every adapter in a single PR, with one CI and one bun install — while each still publishes independently so consumers pull only the backend (and its heavy deps) they actually use.
Each adapter currently dev-links the core via file:../../queue. Once @absolutejs/queue is published, switch these to the published version (the model @absolutejs/voice-adapters uses).
2 public packages and 0 private workspace projects are versioned and developed together.
Outcomes
Storage adapters for @absolutejs/queue — a private workspace monorepo. Each adapter is published as its own package and depends on @absolutejs/queue; install only the one for your backend.
Adapters share the JobStore contract from @absolutejs/queue. Keeping them in one workspace means a contract change can update every adapter in a single PR, with one CI and one bun install — while each still publishes independently so consumers pull only the backend (and its heavy deps) they actually use.
Each adapter currently dev-links the core via file:../../queue. Once @absolutejs/queue is published, switch these to the published version (the model @absolutejs/voice-adapters uses).
Hardening checklist
Follow in order
Working example for Develop.
bun install # installs every workspace member
bun run typecheck # across all adapters
bun run test # across all adapters
bun run build # across all adapters2 public packages and 0 private workspace projects are maintained in this repository.
Public package — Postgres (Drizzle) storage adapter for @absolutejs/queue — postgres.js + Neon serverless
Public package — Redis-backed JobStore for @absolutejs/queue. Atomic Lua claim, sorted-set scheduling by runAt, per-job hash records. For shops running Redis instead of (or alongside) Postgres.
Scripts declared by this project’s package manifest.