A reliable job queue implementation on top of Redis, providing atomic operations, promises-based API (using Bluebird), built-in throttling, delayed jobs, multiple attempts, a REST API, and a web UI. Version 2.1.0 is the current stable release. Heavily inspired by Kue but with different semantics. Requires Redis >= 2.8.9.
npm install fantastiqNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Shows how to create a queue, process jobs, and add a job using the promise-based API.
Ensure your job handler returns a promise. If you use `retrieve`/`acknowledge` manually, call `queue.acknowledge(job.id, null, result)` on success or `queue.acknowledge(job.id, error)` on failure.
Ensure the HTTP server is behind a firewall or uses authentication middleware.
Use `unique: '<key>'` instead of `uniqueKey: '<key>'`.
Use one of the predefined priority strings: 'low', 'normal', 'medium', 'high', 'critical'.
Update code expecting an array: `const job = await queue.retrieve();` instead of `const jobs = await queue.retrieve(); const job = jobs[0];`.
Start Redis server with `redis-server` or check connection settings.
Use `const queue = require('fantastiq')(...);` or use dynamic import with `.default`.Check job ID or increase `removeCompletedAfter` configuration.