Skip to main content
PortQueue logo

PortQueue

A horizontally scalable, fault-tolerant, database-agnostic, performance-focused queue implementation.

Scales to Many Servers

Scaling is just running more copies of your app — no leader election, no config, no coordinator.
Jobs can also target specific servers in your fleet for data locality.

How it scales
Database Agnostic

Point it at the database you already run — PostgreSQL, MySQL, Oracle, PGLite, or SQLite. Each driver picks the best strategy its engine supports, so your app code stays identical.

Pick a driver
A Powerful Dashboard & CLI

A mountable React dashboard (plus a full CLI) to monitor and control both queues and instances live — pause, resume, retry, and watch throughput, with no third-party service.

See the dashboard
Scheduling & Cron

Delayed jobs, fixed intervals, and cron with timezones — all through one addJob method.

Schedule jobs
Fault-Tolerant & Observable

Automatic retries with backoff, stalled-job reclaim, liveness-aware fallback, and at-least-once delivery — with rich events and hooks for metrics and tracing.

Events & hooks
Retention & Auto-Cleaning

Your table never fills up on its own. Pick a retention mode per queue or per job — keep the history forever, or delete after a TTL — and PortQueue does the cleanup in the background.

Configure retention

At a glance

Add a job, process it on a worker. Same code on any driver.

app.ts
import { PortQueue } from '@portqueue/core';
import { PostgresqlDriver } from '@portqueue/core/drivers/postgresql';

enum QueueName { Emails = 'emails' }

const pq = new PortQueue<QueueName>({
driver: new PostgresqlDriver({ connectionString: process.env.DATABASE_URL }),
});
await pq.init();

// Create the queue and provide a jobs handler.
pq.createQueue<{ to: string }>({
name: QueueName.Emails,
limiter: { concurrency: 10 },
handler: async (job) => { await send(job.data); },
});

// Add a job to the queue.
await pq.addJob({ queue: QueueName.Emails, data: { to: 'a@b.com' } });

License

PortQueue is absolutely free — open source under the MIT license. Commercial use permitted, no license fee, no obligations. Use it in anything, forever.

Team

The people who build PortQueue.

Gheorghe Gherciu
Creator & Lead Engineer

Designed and built PortQueue — the driver model, the public API, and the docs and dashboard design system.

Want to join them? PortQueue is open source and welcomes contributors — see the Contributing guide.