# BabelQueue

> A high-performance, agnostic queue standard that lets Laravel, Go, Python, Java, .NET and Node.js speak one strict JSON schema.

- Status: SDKs at 1.0 · SemVer-stable
- License: MIT
- Home: babelqueue.com
- Updated: 2026-09-15
- Source: https://tignex.com/projects/babelqueue/
- Language: en-US
- Author: Muhammet Şafak

---

Polyglot Queues, Simplified.

## The problem

Every ecosystem solves queuing on its own terms, and the message pays for it. A job serialised by PHP is unreadable to Go; a Celery payload means nothing to Spring Boot. The usual fixes — `serialize()` on the wire, a bridge service in the middle — turn a language choice into a lock-in, and a queue into a translation layer nobody owns.

## The approach

BabelQueue defines the envelope first: one canonical JSON schema that every SDK produces and consumes identically, with messages routed by URN rather than by class name. A Laravel producer and a Go consumer agree because the specification says what a message is — not because they share a runtime.

Six SDKs speak it today — PHP (Laravel, Symfony), Python (Celery, Django), Go (Asynq, Machinery), Node.js (BullMQ, NestJS), Java (Spring Boot) and .NET (MassTransit) — over the brokers you already run: Redis, RabbitMQ, SQS, Azure Service Bus, Pulsar, Kafka and ActiveMQ/Artemis.

## What it is not

It is not a new message broker, and it asks for no sidecar or proxy. It does not replace your framework's job system either — it is the shape of the message those systems already pass around, written down so another language can read it.

## Links

- [Project site](https://babelqueue.com)
- [Repository](https://github.com/BabelQueue)
- [Documentation](https://babelqueue.com/docs/)
- [Specification](https://babelqueue.com/docs/spec/1.x/introduction/)
