--- title: "About BabelQueue" description: "BabelQueue is an open-source, broker-agnostic queue standard and set of SDKs, created and maintained by Muhammet Şafak and released under the MIT licence." source: https://babelqueue.com/about/ updated: 2026-10-08T00:00:00.000Z --- # About BabelQueue BabelQueue is an open-source standard — plus the SDKs that implement it — for queue messages that any language can read. It is free software, developed in the open, and maintained by Muhammet Şafak. ## What it is A producer in one language writes a job to the broker you already run; a consumer in another language picks it up and handles it. That works because every SDK emits the same strict JSON envelope instead of a language-specific serialization format — no PHP `serialize()` on the wire, no bridge service, no schema registry to operate. Messages are identified by a [URN](/docs/spec/1.x/urn/) rather than a class name, and a `trace_id` is carried unchanged across every hop. The [envelope is frozen](/docs/spec/1.x/envelope/) at `schema_version: 1`: no field is added, renamed, removed or retyped without a deliberate version decision, so a v1 producer stays readable by every v1 consumer indefinitely. That guarantee — not any single SDK — is the product. There are six SDK cores today (PHP, Python, Go, Node.js, Java and .NET), each with framework adapters and per-broker transport modules, and all of them are locked to a shared cross-SDK conformance suite of golden envelopes. The [wire contract](/docs/spec/1.x/introduction/) is the normative reference; the SDKs follow it, never the other way round. The vocabulary those pages use is defined term by term in the [glossary](/glossary/). ## The problem it solves Teams that run more than one language end up sharing a queue, and the default message formats do not travel. A Laravel job is a PHP `serialize()` string that only PHP can decode, a Celery task follows Celery's own message protocol, and each framework names jobs after its own classes. The usual workarounds — a translation service in the middle, a second queue per language, or rewriting the producer — add moving parts and drift over time. BabelQueue removes the translation step. Every producer writes the same envelope, every consumer reads it, and the broker in between stays the one you already operate. ## Status and maturity BabelQueue is **generally available**. All six SDK cores reached [1.0.0 on 7 June 2026](/blog/babelqueue-1-0/) together and have shipped compatible minor releases since; each one follows SemVer, so breaking API changes wait for a major version. The wire envelope is frozen at `schema_version: 1`, and every opt-in feature added after 1.0 — idempotency, the transactional outbox, schema validation, tracing, DLQ redrive, field-level encryption — has kept it there. Redis and RabbitMQ are supported everywhere; Amazon SQS, Azure Service Bus, Apache Pulsar, Apache Kafka and ActiveMQ Artemis are supported per SDK as listed in the [documentation](/docs/). The current version of each core is shown on the [home page](/#ecosystem). ## Who maintains it BabelQueue was created and is maintained by **Muhammet Şafak** ([@muhammetsafak](https://github.com/muhammetsafak)), who also writes the specification, the SDKs and the articles on this site. Work happens in public: each SDK, the shared conformance suite and this website live in their own repositories (see below). ## Licence and source code The standard and every SDK are released under the **MIT licence**. You can use BabelQueue commercially, fork it, and vendor it into a closed-source product; every SDK repository carries the licence text (© 2026 Muhammet Şafak). The source of every SDK, the conformance suite and this website is public in the [BabelQueue organisation on GitHub](https://github.com/BabelQueue). The content of this website is licensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); the BabelQueue and Tignex names and logos are excluded. See the [terms of use](/terms-of-use/) for details. ## Getting involved Bug reports, questions and pull requests are welcome on the repository for the SDK you are using — open an issue in the [GitHub organisation](https://github.com/BabelQueue) and it will land with the maintainer. Two things are worth knowing before you file: - Anything that touches the wire format is a contract change, not a bug fix. It needs a recorded decision and a version choice, so expect that conversation to start in the spec rather than in a patch. - Behaviour that differs between two SDKs is the highest-value report there is — parity is the whole promise. Include the envelope both sides produced. New to the project? Start with the [documentation](/docs/), the [FAQ](/faq/), the [glossary](/glossary/), or the [blog](/blog/). ## About Tignex Tignex is an independent open-source engineering organization that builds tools, infrastructure, protocols and standards for developers and software teams. Its aim is software that gives developers more control, takes interoperability seriously, avoids unnecessary vendor lock-in and can be self-hosted. Projects published under Tignex keep their own names, identities and domains; Tignex is the engineering organization they share. [tignex.com](https://tignex.com) ## About the founder Muhammet Şafak is the founder of Tignex — a software engineer, system architect and engineering researcher who has been building software since 2008. Today he works on the architecture, scalability and reliability of high-traffic distributed systems. He publishes independent research that examines system behaviour through reproducible measurements, and chooses technology by the problem rather than the language. In the rest of his time he builds open-source tools and infrastructure software under Tignex. [muhammetsafak.com](https://muhammetsafak.com)