GroupMQ v1.1.0 is a per-group FIFO queue built on Redis, designed for Node.js (>=18) and TypeScript. It provides strong ordering guarantees within groups, supporting visibility timeouts and automatic retry for failed jobs. Unlike generic Redis queues like Bull or Kue, GroupMQ enforces strict per-key FIFO semantics, making it ideal for multi-tenant workloads where message ordering per tenant is critical. It is distributed as ESM-only (no CommonJS), ships with TypeScript definitions, and depends on ioredis >=5. Release cadence is irregular; the project is actively maintained with recent commits.
npm install groupmqNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Creates a GroupMQ queue, adds a job to a group, pops and processes it, then acknowledges it.
Use 'import { GroupMQ } from "groupmq"' in an ESM context, or 'const { GroupMQ } = await import("groupmq")' in CJS.Upgrade Node.js to v18+ and ioredis to v5+.
Implement a retry loop that re-pops jobs after timeout, or use the ack() only after successful processing.
Pass visibilityTimeout in the job options when calling add().
Ensure visibilityTimeout is a positive integer (e.g., 300).
Use import syntax or dynamic import: const { GroupMQ } = await import('groupmq');Run 'npm install groupmq' and ensure package.json has 'type': 'module' or use .mjs extension.