bullmq-flow

Automates dependent BullMQ FlowJobs orchestration via FlowProducer in NestJS services.

Updated Mar 1, 2026
One-click install
npx skills add https://github.com/Zoppy-crm/.github --skill bullmq-flow
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bullmq-flow
Source: https://github.com/Zoppy-crm/.github/tree/main/skills/backend/bullmq-flow
Command: npx skills add https://github.com/Zoppy-crm/.github --skill bullmq-flow

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

BullMQ Flow is used to coordinate dependent jobs where later tasks depend on earlier results, enabling fan-out/fan-in and chained processing within BullMQ queues.

Core Features & Use Cases

  • Define FlowJob trees with a parent and multiple children to enforce execution order.
  • Use FlowProducer to orchestrate complex job graphs across queues and handle results.
  • Ideal for scenarios requiring conditional branching, result aggregation, and guaranteed sequencing.

Quick Start

Create a FlowService that constructs a FlowJob tree with a parent and child jobs and executes it via FlowProducer.

Frequently Asked Questions about bullmq-flow

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I orchestrate dependent BullMQ jobs where child tasks wait for parent outcomes?

To orchestrate dependent BullMQ jobs, you construct a FlowJob tree with a parent and multiple child jobs to enforce execution order. This allows child jobs to depend on parent outcomes across queues and services.

What is the best way to implement fan-out and fan-in job processing in a NestJS service?

Implementing fan-out and fan-in processing in a NestJS service involves using a FlowProducer to orchestrate complex job graphs across queues. This allows a single parent job to split into multiple child jobs and aggregate their results.

Can I use FlowProducer to manage conditional branching and result aggregation across queues?

Yes, FlowProducer can manage conditional branching and result aggregation across queues. It orchestrates complex job graphs to handle scenarios requiring guaranteed sequencing and dependent task execution.

How do I build a FlowJob tree with parent and child jobs for guaranteed task sequencing?

Building a FlowJob tree requires defining a parent job and linking multiple child jobs to it. This structure enforces execution order and guarantees that downstream tasks only run after parent dependencies complete.

When do I need BullMQ flow orchestration for my TypeScript application?

You need BullMQ flow orchestration when your application requires chained processing, fan-out/fan-in job graphs, or conditional branching. It coordinates dependent jobs where later tasks must wait for earlier results.

Does BullMQ flow orchestration support conditional job graphs across different queues and services?

Yes, BullMQ flow orchestration supports conditional job graphs across different queues and services. You can use a BaseFlow within a NestJS service to handle complex execution paths and result aggregation.