# @suaveplan/queue - Enterprise-grade queue management: memory/priority/delayed queues, concurrent workers with retry and dead-letter, job state machines, OTel instrumentation ## Summary Enterprise-grade queue management: memory/priority/delayed queues, concurrent workers with retry and dead-letter forwarding, job state machines, and OTel instrumentation. ## Documentation tree - [errors](./src/errors/queue-error.md) — _(no submodules)_ - [queue-error](./src/errors/queue-error.md) — _(no submodules)_ - [job](./src/job/job.md) — _(no submodules)_ - [job](./src/job/job.md) — _(no submodules)_ - [delayed-queue](./src/queue/delayed-queue.md) — `DelayedQueue` is an explicit alias for a delay-aware FIFO queue. It extends `MemoryQueue` to make the delay inte… - [memory-queue](./src/queue/memory-queue.md) — `MemoryQueue` is the foundational FIFO queue for `@suaveplan/queue`. It stores jobs in memory in insertion order and… - [priority-queue](./src/queue/priority-queue.md) — `PriorityQueue` extends `MemoryQueue` to provide priority-ordered job scheduling. Jobs with higher `priority` val… - [types](./src/types/queue-types.md) — _(no submodules)_ - [queue-types](./src/types/queue-types.md) — _(no submodules)_ - [worker](./src/worker/queue-worker.md) — _(no submodules)_ - [queue-worker](./src/worker/queue-worker.md) — _(no submodules)_ - [queue-error](./src/errors/queue-error.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_- [delayed-queue](./src/queue/delayed-queue.md) — `DelayedQueue` is an explicit alias for a delay-aware FIFO queue. It extends `MemoryQueue` to make the delay inte… - [memory-queue](./src/queue/memory-queue.md) — `MemoryQueue` is the foundational FIFO queue for `@suaveplan/queue`. It stores jobs in memory in insertion order and… - [priority-queue](./src/queue/priority-queue.md) — `PriorityQueue` extends `MemoryQueue` to provide priority-ordered job scheduling. Jobs with higher `priority` val… - [types](./src/types/queue-types.md) — _(no submodules)_- [queue-types](./src/types/queue-types.md) — _(no submodules)_- [worker](./src/worker/queue-worker.md) — _(no submodules)_- [queue-worker](./src/worker/queue-worker.md) — _(no submodules)_- [queue-error](./src/errors/queue-error.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_- [delayed-queue](./src/queue/delayed-queue.md) — `DelayedQueue` is an explicit alias for a delay-aware FIFO queue. It extends `MemoryQueue` to make the delay inte… - [memory-queue](./src/queue/memory-queue.md) — `MemoryQueue` is the foundational FIFO queue for `@suaveplan/queue`. It stores jobs in memory in insertion order and… - [priority-queue](./src/queue/priority-queue.md) — `PriorityQueue` extends `MemoryQueue` to provide priority-ordered job scheduling. Jobs with higher `priority` val… - [types](./src/types/queue-types.md) — _(no submodules)_- [queue-types](./src/types/queue-types.md) — _(no submodules)_- [worker](./src/worker/queue-worker.md) — _(no submodules)_- [queue-worker](./src/worker/queue-worker.md) — _(no submodules)_- [queue-error](./src/errors/queue-error.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_- [delayed-queue](./src/queue/delayed-queue.md) — `DelayedQueue` is an explicit alias for a delay-aware FIFO queue. It extends `MemoryQueue` to make the delay inte… - [memory-queue](./src/queue/memory-queue.md) — `MemoryQueue` is the foundational FIFO queue for `@suaveplan/queue`. It stores jobs in memory in insertion order and… - [priority-queue](./src/queue/priority-queue.md) — `PriorityQueue` extends `MemoryQueue` to provide priority-ordered job scheduling. Jobs with higher `priority` val… - [types](./src/types/queue-types.md) — _(no submodules)_- [queue-types](./src/types/queue-types.md) — _(no submodules)_- [worker](./src/worker/queue-worker.md) — _(no submodules)_- [queue-worker](./src/worker/queue-worker.md) — _(no submodules)_- [queue-error](./src/errors/queue-error.md) — _(no submodules)_- [job](./src/job/job.md) — _(no submodules)_ - [job](./src/job/job.md) — _(no submodules)_- [delayed-queue](./src/queue/delayed-queue.md) — `DelayedQueue` is an explicit alias for a delay-aware FIFO queue. It extends `MemoryQueue` to make the delay inte… - [memory-queue](./src/queue/memory-queue.md) — `MemoryQueue` is the foundational FIFO queue for `@suaveplan/queue`. It stores jobs in memory in insertion order and… - [priority-queue](./src/queue/priority-queue.md) — `PriorityQueue` extends `MemoryQueue` to provide priority-ordered job scheduling. Jobs with higher `priority` val… - [types](./src/types/queue-types.md) — _(no submodules)_ - [queue-types](./src/types/queue-types.md) — _(no submodules)_- [worker](./src/worker/queue-worker.md) — _(no submodules)_ - [queue-worker](./src/worker/queue-worker.md) — _(no submodules)_ ## Packages | Module | Description | |--------|-------------| | [errors/queue-error](src/errors/queue-error.md) | Error hierarchy with stable codes | | [job/job](src/job/job.md) | Job state machine | | [queue/memory-queue](src/queue/memory-queue.md) | FIFO in-memory queue | | [queue/priority-queue](src/queue/priority-queue.md) | Priority-ordered queue | | [queue/delayed-queue](src/queue/delayed-queue.md) | Delay-aware queue | | [worker/queue-worker](src/worker/queue-worker.md) | Concurrent job worker with retry | | [types/queue-types](src/types/queue-types.md) | Shared types and Zod schemas | ## Quick Start ```ts import { createMemoryQueue } from "@suaveplan/queue/queue/memory-queue"; import { runWorker } from "@suaveplan/queue/worker/queue-worker"; const queue = createMemoryQueue<{ userId: string }>(); await queue.enqueue({ userId: "user_1" }); await queue.enqueue({ userId: "user_2" }); const stats = await runWorker(queue, async (job) => { console.log("Processing user:", job.payload.userId); }, { concurrency: 2, retryPolicy: { maxAttempts: 3, backoffMs: 1000, backoffMultiplier: 2 }, }); console.log(stats); // { processed: 2, succeeded: 2, failed: 0, dead: 0, retried: 0 } ```