Skip to content
Get started
Get started

Install bunqueue, Setup Guide for Bun Job Queue

guide · installation

Install bunqueue, zero infrastructure.

Install bunqueue from npm, build it from source, or drop a single self-contained binary on a server. No Redis, no broker, nothing else to provision.

1 command: bun add bunqueue 5.5 MB install, 7 packages 5 prebuilt binary platforms
  • Bun v1.3.9 or later (enforced via engines)
Terminal window
bun add bunqueue
Terminal window
git clone https://github.com/egeominotti/bunqueue.git
cd bunqueue
bun install
bun run build

Each release ships self-contained executables, useful on servers and edge gateways (Raspberry Pi 4/5, ARM64 boxes) where you don’t want to install a runtime:

Terminal window
# Pick your platform: linux-x64 | linux-arm64 | darwin-x64 | darwin-arm64 (windows-x64 ships as a .zip)
curl -fsSLO https://github.com/egeominotti/bunqueue/releases/latest/download/bunqueue-linux-arm64.tar.gz
tar -xzf bunqueue-linux-arm64.tar.gz
./bunqueue-linux-arm64 --version
sudo mv bunqueue-linux-arm64 /usr/local/bin/bunqueue
bunqueue start --data-path /var/lib/bunqueue/queue.db

Checksums: SHA256SUMS is attached to every release.

The binary is the full server + CLI. For the client SDK in your app code you still install the package (bun add bunqueue).

import { Queue, Worker } from 'bunqueue/client';
// Both Queue and Worker must have embedded: true
const queue = new Queue('test', { embedded: true });
const worker = new Worker('test', async (job) => {
console.log('Processing:', job.data);
return { success: true };
}, { embedded: true });
await queue.add('hello', { message: 'bunqueue is working!' });
Terminal window
# Start server
bunqueue start
# Check version
bunqueue --version

bunqueue is written in TypeScript and includes full type definitions:

import type {
Job,
JobOptions,
WorkerOptions,
StallConfig,
DlqConfig,
DlqEntry
} from 'bunqueue/client';