open-index/open-npm huggingface dataset:
npm package: @mqueue/amqplib
Description: MQueue adapter for amqplib AMQP v0.9.1
Author: Dom Webber
Latest version: 1.0.1

# amqplib for MQueue

An [amqplib](https://github.com/amqp-node/amqplib) adapter (AMQP v0.9.1) for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for amqplib queues with a multi-backend setup with MQueue.

```bash
npm install --save @mqueue/queue @mqueue/amqplib
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { AmqplibQueue } from "@mqueue/amqplib"; // oe require("@mqueue/amqplib");

const outgoingQueue = new MQueue.Outgoing(
  await AmqplibQueue.Outgoing.connect("amqp://rabbitmq:5271", "queue-name"),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await AmqplibQueue.Incoming.connect("amqp://rabbitmq:5271", "queue-name"),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [RabbitMQ](https://rabbitmq.com)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/azure-service-bus
Description: MQueue adapter for Azure Service Bus
Author: Dom Webber
Latest version: 1.0.1

# Azure Service Bus for MQueue

An [Azure Service Bus](https://azure.microsoft.com/products/service-bus) adapter
for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for Azure Service Bus queues with a multi-backend setup with
MQueue. Note: Azure Service Bus is also compatible with AMQP v1.0 and thus
compatible with the Rhea MQueue adapter (which it uses under-the-hood), however,
you may achieve a better experience (particularly with Azure authentication and
identity) by using the specialised adapter.

```bash
npm install --save @mqueue/queue @mqueue/azure-service-bus
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { AzureServiceBusQueue } from "@mqueue/azure-service-bus"; // or require("@mqueue/azure-service-bus");

const outgoingQueue = new MQueue.Outgoing(
  await AzureServiceBusQueue.Outgoing.connect(
    "amqp://rabbitmq:5271",
    "queue-name",
  ),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await AzureServiceBusQueue.Incoming.connect(
    "amqp://rabbitmq:5271",
    "queue-name",
  ),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/fastq
Description: MQueue adapter for fastq
Author: Dom Webber
Latest version: 1.0.1

# fastq for MQueue

A [fastq](https://github.com/mcollina/fastq) adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for fastq queues with a multi-backend setup with MQueue.

```bash
npm install --save @mqueue/queue @mqueue/fastq
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue")
import { FastqQueue } from "@mqueue/fastq"; // or require("@mqueue/fastq")

const incomingQueue = new FastqQueue.Incoming(1);
const outgoingQueue = new FastqQueue.Outgoing(incomingQueue.queue);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

await incomingQueue.consume(async (payload) => {
  // ...
});

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- Single-Node NodeJS Applications

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/google-cloud-pubsub
Description: MQueue adapter for Google Cloud Pub/Sub
Author: Dom Webber
Latest version: 1.0.2

# @google-cloud/pubsub for MQueue

An [Google Cloud Pub-Sub](https://npmjs.com/package/@google-cloud/pubsub)
adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for Google Cloud Pub/Sub with a multi-backend setup with MQueue.

```bash
npm install --save @mqueue/queue @mqueue/google-cloud-pubsub
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { PubSubQueue } from "@mqueue/google-cloud-pubsub"; // or require("@mqueue/google-cloud-pubsub");

const outgoingQueue = new MQueue.Outgoing(
  await PubSubQueue.Outgoing.connect(...),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await PubSubQueue.Incoming.connect(...),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [Google Cloud Pub/Sub](https://cloud.google.com/pubsub)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/kafkajs
Description: MQueue adapter for Kafka
Author: Dom Webber
Latest version: 1.0.2

# KafkaJS for MQueue

An [KafkaJS](https://github.com/tulios/kafkajs) adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for Kafka queues with a multi-backend setup with MQueue.

> Note: This Queue Adapter is a Work in Progress.

```bash
npm install --save @mqueue/queue @mqueue/kafkajs
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { KafkaQueue } from "@mqueue/kafkajs"; // or require("@mqueue/kafkajs");

const outgoingQueue = new MQueue.Outgoing(
  await KafkaQueue.Outgoing.connect("amqp://rabbitmq:5271", "queue-name"),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await KafkaQueue.Incoming.connect("amqp://rabbitmq:5271", "queue-name"),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [Apache Kafka](https://kafka.apache.org)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/mqtt
Description: MQueue adapter for MQTT
Author: Dom Webber
Latest version: 1.0.1

# MQTT.js for MQueue

An [MQTT](https://github.com/mqttjs/MQTT.js) adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for MQTT queues with a multi-backend setup with MQueue.

```bash
npm install --save @mqueue/queue @mqueue/mqtt
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { MqttQueue } from "@mqueue/mqtt"; // or require("@mqueue/mqtt");

const outgoingQueue = new MQueue.Outgoing(
  await MqttQueue.Outgoing.connect("amqp://rabbitmq:5271", "queue-name"),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await MqttQueue.Incoming.connect("amqp://rabbitmq:5271", "queue-name"),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [Eclipse Mosquitto](https://mosquitto.org)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/multicast
Description: MQueue adapter for multi-backend publishing and subscribing
Author: Dom Webber
Latest version: 1.0.1

# Mulitcast Strategy for MQueue

Broadcast a message to multiple different
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md)
queue backends simultaneously, with the same interface. Publish to
[amqplib](/packages/adapters/amqplib/README.md),
[azure-service-bus](/packages/adapters/azure-service-bus/README.md),
[rhea](/packages/adapters/rhea/README.md), and
[sqs](/packages/adapters/sqs/README.md) with one call.

```bash
npm install --save @mqueue/queue @mqueue/multicast # + Adapter(s)...
# or use pnpm/yarn
```

```ts
const outgoingQueue = new MQueue.Outgoing(
  new MulticastQueue.Outgoing([
    await AmqplibOutgoingQueue.connect("amqp://rabbitmq:5271", "queue-name"),
    await AmqplibOutgoingQueue.connect("amqp://rabbitmq:5272", "queue-name2"),
  ]),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  new MulticastQueue.Incoming([
    await AmqplibIncomingQueue.connect("amqp://rabbitmq:5271", "queue-name"),
    await AmqplibIncomingQueue.connect("amqp://rabbitmq:5272", "queue-name2"),
  ]),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Filtering & Randomisation

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { MulticastQueue } from "@mqueue/multicast"; // or require("@mqueue/multicast");

// Select one random adapter (for example)
const filter = (adapters) => [adapters[randomInt(adapters.length)]];

// Or filter by message detail
cosnt filter = (adapters, message) => {
  return message.headers.example === "something" ? adapter[0] : adapter;
};

const outgoingQueue = new MQueue.Outgoing(
  new MulticastQueue.Outgoing([
    await AmqplibOutgoingQueue.connect("amqp://rabbitmq:5271", "queue-name"),
    await AmqplibOutgoingQueue.connect("amqp://rabbitmq:5272", "queue-name2"),
  ]),
  { filter },
);

// ...

const incomingQueue = new MQueue.Incoming(
  new MulticastQueue.Incoming([
    await AmqplibIncomingQueue.connect("amqp://rabbitmq:5271", "queue-name"),
    await AmqplibIncomingQueue.connect("amqp://rabbitmq:5272", "queue-name2"),
  ]),
  { filter },
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/null
Description: Dead-end/testing MQueue adapter
Author: Dom Webber
Latest version: 1.0.1

# Dead-end (Null) Adapter for MQueue

A queue adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md)
that goes nowhere - primarily intended for internal and testing purposes.

```bash
npm install --save @mqueue/queue @mqueue/null
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { NullQueue } from "@mqueue/null"; // or require("@mqueue/null");

const outgoingQueue = new MQueue.Outgoing(new NullQueue.Outgoing());

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(new NullQueue.Incoming());

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```
npm package: @mqueue/rhea
Description: MQueue adapter for rhea AMQP v1.0
Author: Dom Webber
Latest version: 1.0.1

# rhea for MQueue

An [rhea](https://github.com/amqp/rhea) adapter (AMQP v1.0) for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for rhea queues with a multi-backend setup with MQueue.

```bash
npm install --save @mqueue/queue @mqueue/rhea
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { RheaQueue } from "@mqueue/rhea"; // or require("@mqueue/rhea");

const outgoingQueue = new MQueue.Outgoing(
  await RheaQueue.Outgoing.connect("amqp://rabbitmq:5271", "queue-name"),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await RheaQueue.Incoming.connect("amqp://rabbitmq:5271", "queue-name"),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [RabbitMQ v4 and later](https://rabbitmq.com)
- [RabbitMQ v3 and earler, with the AMQP v1.0 plugin](https://rabbitmq.com)
- [Apache ActiveMQ](https://activemq.apache.org)
- [Azure Service Bus](https://azure.microsoft.com/products/service-bus) -
  **Note**: identity and authentication is easier with the
  [dedicated Azure Service Bus queue adapter](https://github.com/domwebber/mqueue/blob/main/packages/azure-service-bus/README.md)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/sqs
Description: MQueue adapter for Amazon Web Services Simple Queue Service
Author: Dom Webber
Latest version: 2.0.1

# Azure Service Bus for MQueue

An [AWS SQS](https://aws.amazon.com/sqs/) adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for AWS Simple Queue Service queues with a multi-backend setup
with MQueue. Note: SQS Incoming queue consumption uses
[sqs-consumer](https://github.com/bbc/sqs-consumer).

```bash
npm install --save @mqueue/queue @mqueue/sqs
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue")
import { SQSQueue } from "@mqueue/fastq"; // or require("@mqueue/fastq");

const outgoingQueue = new MQueue.Outgoing(
  await SQSQueue.Outgoing.connect("/queue1", {
    credentials: { accessKeyId: "x", secretAccessKey: "x" },
    region: "elasticmq", // or applicable AWS region for SQS
    endpoint: "http://elasticmq:9324",
  }),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await SQSQueue.Incoming.connect("/queue1", {
    credentials: { accessKeyId: "x", secretAccessKey: "x" },
    region: "elasticmq", // or applicable AWS region for SQS
    endpoint: "http://elasticmq:9324",
  }),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [AWS Simple Queue Service (SQS)](https://aws.amazon.com/sqs/)
- [ElasticMQ (SQS-Compatible)](https://github.com/softwaremill/elasticmq)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mqueue/stompjs
Description: MQueue adapter for STOMP
Author: Dom Webber
Latest version: 1.0.1

# STOMP.js for MQueue

An [STOMP.js](https://github.com/stomp-js/stompjs) adapter for
[MQueue](https://github.com/domwebber/mqueue/blob/main/packages/queue/README.md),
adding support for STOMP queues with a multi-backend setup with MQueue.

```bash
npm install --save @mqueue/queue @mqueue/stompjs
# or use pnpm/yarn
```

```ts
import MQueue from "@mqueue/queue"; // or require("@mqueue/queue");
import { StompQueue } from "@mqueue/stompjs"; // or require("@mqueue/stompjs");

const outgoingQueue = new MQueue.Outgoing(
  await StompQueue.Outgoing.connect("amqp://rabbitmq:5271", "queue-name"),
);

outgoingQueue.sendMessage({
  headers: {
    "Account-ID": "123",
  },
  body: "...",
});

// ...

const incomingQueue = new MQueue.Incoming(
  await StompQueue.Incoming.connect("amqp://rabbitmq:5271", "queue-name"),
);

// Start listening to the queue
await incomingQueue.consume(async (payload) => {
  const topicOrQueueName = payload.transport.name;
  const headers = payload.message.headers;
  const data = await payload.message.json();
  await payload.accept(); // or await payload.reject();
  // ...
});
```

## Compatibility

- [RabbitMQ (with STOMP plugin)](https://rabbitmq.com)
- [Apache ActiveMQ](https://activemq.apache.org)

## License

[MIT © Dom Webber](./LICENSE)
npm package: @mquiuqui/doc-validator
Description: Validador de documentos brasileiros (CPF, CNPJ, etc)
Latest version: 1.0.4


# 📦 Doc Validator

Validator for Brazilian documents like **CPF**, **CNPJ**, **RG**, **CNH**, and **date-related validations** — built by [@mquiuqui](https://github.com/mquiuqui).

![npm](https://img.shields.io/npm/v/@mquiuqui/doc-validator?style=flat-square)
![tests](https://img.shields.io/github/actions/workflow/status/mquiuqui/doc-validator/publish.yml?branch=main&style=flat-square)

## ✨ Features

- ✅ CPF validation and formatting
- ✅ CNPJ validation and formatting
- ✅ RG validation and formatting
- ✅ CNH validation and formatting
- ✅ Brazilian date validation (dd/mm/yyyy)
- ✅ Age calculation & over-18 check
- ✅ Written in TypeScript with full typings
- ✅ Tested with Jest
- ✅ CI/CD with GitHub Actions

---

## 📦 Installation
```bash
npm install @mquiuqui/doc-validator
```

## 🔧 Usage
```ts
import {
  isValidCPF,
  formatCPF,
  isValidCNPJ,
  formatCNPJ,
  isValidRG,
  formatRG,
  isValidCNH,
  formatCNH,
  isValidDateBR,
  isOver18,
  getAge
} from '@mquiuqui/doc-validator';

isValidCPF('529.982.247-25'); // true
formatCPF('52998224725'); // 529.982.247-25

isValidCNPJ('04.252.011/0001-10'); // true
formatCNPJ('04252011000110'); // 04.252.011/0001-10

isValidRG('12.345.678-X'); // true
formatRG('12345678X'); // 12.345.678-X

isValidCNH('12345678909'); // true or false
formatCNH('12345678909'); // 123 456 789 09

isValidDateBR('31/12/2025'); // true
isOver18('01/01/2000'); // true
getAge('01/01/1990'); // 34
```

---

## 🚀 Scripts

| Script                     | Description                                        |
|----------------------------|----------------------------------------------------|
| `npm test`                 | Run unit tests with Jest                          |
| `npm run build`            | Compile TypeScript into `dist/` folder            |
| `npm run release:patch`    | Patch version bump + git push + tag               |

---

## 🛠️ GitHub Actions

This project runs continuous integration via GitHub Actions:
- Automatically runs tests on every push to `main`
- Automatically publishes to NPM when a GitHub release is created

---

## 📄 License
[MIT License](./LICENSE)

---

Made with ❤️ by [@mquiuqui](https://github.com/mquiuqui) — PRs and stars welcome!
npm package: @mr-digital-solutions/mrpay-sdk
Description: MRPay Hosted Checkout SDK for SATIM payments
Latest version: 2.0.1

# MRPay SDK

Hosted Checkout SDK for SATIM payments via MRPay.

MRPay provides a secure hosted payment page. Your application creates a checkout session and redirects the customer to MRPay, which then handles SATIM payment processing.

---

## Installation

```bash
npm install @mrpay/sdk
Basic Usage (Web)
import { MRSatimPay } from "@mrpay/sdk";

const mrpay = new MRSatimPay({
  apiKey: "YOUR_API_KEY",
  baseUrl: "https://api.mrpay.dz",
  platform: "web"
});

await mrpay.payV2({
  orderNumber: "ORDER_1001",
  amount: 5000
});
React Native Usage
const mrpay = new MRSatimPay({
  apiKey: "YOUR_API_KEY",
  baseUrl: "https://api.mrpay.dz",
  platform: "react-native"
});

await mrpay.payV2({
  orderNumber: "ORDER_1001",
  amount: 5000
});
Node.js Usage
const mrpay = new MRSatimPay({
  apiKey: "YOUR_API_KEY",
  baseUrl: "https://api.mrpay.dz",
  platform: "node"
});

const { checkoutUrl } = await mrpay.payV2({
  orderNumber: "ORDER_1001",
  amount: 5000
});

// Redirect customer to checkoutUrl
API Reference
createCheckoutSession(params)
Creates an MRPay checkout session.

openCheckout(url)
Opens MRPay hosted checkout page.

payV2(params)
Convenience method that creates a checkout session and redirects automatically (web / React Native).

Minimum Amount
Minimum payment amount is 50 DZD.

Platform Support
Web

React Native

Node.js

Security
MRPay hosted checkout reduces PCI scope by handling payment processing and SATIM integration securely.

Migration

See MIGRATION.md for upgrading from SDK v1.

License

MIT © MR Digital Solutions