A simple, fast, robust job/task queue for Node.js, backed by Redis. Current stable version is 2.0.0, requiring Node >= 20 and Redis 2.8+ (3.2+ recommended). Maintained regularly by Mixmax as of v1. Differentiators: ~1000 LOC minimal dependencies, Lua scripting and pipelining for high throughput, designed for short real-time jobs where results are needed within an HTTP request (unlike Bull or Kue which focus on longer background jobs). Supports concurrent processing, job timeouts/retries, scheduled jobs, progress reporting, Pub/Sub events, and at-least-once delivery via stuck job retries.
npm install bee-queueNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Demonstrates creating a queue, saving a job, processing it, and receiving the result via event. Uses async/await and callback patterns.
Upgrade Node.js to version 20 or higher.
Use async function: `queue.process(async (job) => { return result; })`.Upgrade Redis server to 3.2 or later.
Use `checkInterval` instead of `pollInterval` in queue settings.
Call `job.remove()` after processing if you need to clean up.
Use `const Queue = require('bee-queue')` for CommonJS.Start Redis server or check your configuration: ensure redis is running and host/port are correct.
Use `const job = queue.createJob(data); await job.save();`
Ensure you import the default: `import Queue from 'bee-queue'` then use `new Queue(...).process(...)`.