Gathering detailed insights and metrics for bullmq
Gathering detailed insights and metrics for bullmq
Gathering detailed insights and metrics for bullmq
Gathering detailed insights and metrics for bullmq
BullMQ - Message Queue and Batch processing for NodeJS and Python based on Redis
npm install bullmq
Typescript
Module System
Node Version
NPM Version
86.6
Supply Chain
100
Quality
94.9
Maintenance
100
Vulnerability
99.3
License
TypeScript (82.16%)
Lua (9.1%)
Python (8.28%)
JavaScript (0.39%)
Shell (0.06%)
Total Downloads
82,377,987
Last Day
204,691
Last Week
1,132,387
Last Month
4,778,862
Last Year
42,382,417
MIT License
6,938 Stars
2,894 Commits
461 Forks
35 Watchers
42 Branches
162 Contributors
Updated on May 09, 2025
Minified
Minified + Gzipped
Latest Version
5.52.2
Package Id
bullmq@5.52.2
Unpacked Size
2.02 MB
Size
312.30 kB
File Count
849
NPM Version
10.9.2
Node Version
22.15.0
Published on
May 08, 2025
Cumulative downloads
Total Downloads
Last Day
50.3%
204,691
Compared to previous day
Last Week
9%
1,132,387
Compared to previous week
Last Month
-1.7%
4,778,862
Compared to previous month
Last Year
72%
42,382,417
Compared to previous year
56
The fastest, most reliable, Redis-based distributed queue for Node.
Carefully written for rock solid stability and atomicity.
Follow @manast for *important* Bull/BullMQ/BullMQ-Pro news and updates!
You can find tutorials and news in this blog: https://blog.taskforce.sh/
Do you need to work with BullMQ on platforms other than Node.js? If so, check out the BullMQ Proxy
Supercharge your queues with a professional front end:
Sign up at Taskforce.sh
| Dragonfly is a new Redis™ drop-in replacement that is fully compatible with BullMQ and brings some important advantages over Redis™ such as massive better performance by utilizing all CPU cores available and faster and more memory efficient data structures. Read more here on how to use it with BullMQ. |
Some notable organizations using BullMQ:
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
|
Install:
$ yarn add bullmq
Add jobs to the queue:
1import { Queue } from 'bullmq'; 2 3const queue = new Queue('Paint'); 4 5queue.add('cars', { color: 'blue' });
Process the jobs in your workers:
1import { Worker } from 'bullmq';
2
3const worker = new Worker('Paint', async job => {
4 if (job.name === 'cars') {
5 await paintCar(job.data.color);
6 }
7});
Listen to jobs for completion:
1import { QueueEvents } from 'bullmq'; 2 3const queueEvents = new QueueEvents('Paint'); 4 5queueEvents.on('completed', ({ jobId }) => { 6 console.log('done painting'); 7}); 8 9queueEvents.on( 10 'failed', 11 ({ jobId, failedReason }: { jobId: string; failedReason: string }) => { 12 console.error('error painting', failedReason); 13 }, 14);
This is just scratching the surface, check all the features and more in the official documentation
Since there are a few job queue solutions, here is a table comparing them:
Feature | BullMQ-Pro | BullMQ | Bull | Kue | Bee | Agenda |
---|---|---|---|---|---|---|
Backend | redis | redis | redis | redis | redis | mongo |
Observables | ✓ | |||||
Group Rate Limit | ✓ | |||||
Group Support | ✓ | |||||
Batches Support | ✓ | |||||
Parent/Child Dependencies | ✓ | ✓ | ||||
Debouncing | ✓ | ✓ | ✓ | |||
Priorities | ✓ | ✓ | ✓ | ✓ | ✓ | |
Concurrency | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Delayed jobs | ✓ | ✓ | ✓ | ✓ | ✓ | |
Global events | ✓ | ✓ | ✓ | ✓ | ||
Rate Limiter | ✓ | ✓ | ✓ | |||
Pause/Resume | ✓ | ✓ | ✓ | ✓ | ||
Sandboxed worker | ✓ | ✓ | ✓ | |||
Repeatable jobs | ✓ | ✓ | ✓ | ✓ | ||
Atomic ops | ✓ | ✓ | ✓ | ✓ | ||
Persistence | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
UI | ✓ | ✓ | ✓ | ✓ | ✓ | |
Optimized for | Jobs / Messages | Jobs / Messages | Jobs / Messages | Jobs | Messages | Jobs |
Fork the repo, make some changes, submit a pull-request! Here is the contributing doc that has more details.
Thanks for all the contributors that made this library possible, also a special mention to Leon van Kammen that kindly donated his npm bullmq repo.
No vulnerabilities found.
Reason
30 commit(s) and 12 issue activity found in the last 90 days -- score normalized to 10
Reason
no dangerous workflow patterns detected
Reason
license file detected
Details
Reason
no binaries found in the repo
Reason
packaging workflow detected
Details
Reason
0 existing vulnerabilities detected
Reason
SAST tool detected but not run on all commits
Details
Reason
detected GitHub workflow tokens with excessive permissions
Details
Reason
Found 19/28 approved changesets -- score normalized to 6
Reason
dependency not pinned by hash detected -- score normalized to 3
Details
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
Reason
Project has not signed or included provenance with any releases.
Details
Reason
project is not fuzzed
Details
Score
Last Scanned on 2025-04-28
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More