Introduction
The Go SDK is the framework-agnostic core: a wire-envelope codec, contracts and dead-letter helpers that read and write the exact same strict JSON envelope as every other language in the ecosystem.
At its heart it is the codec: you build (or decode) the canonical envelope and
move the bytes with your own broker client, so it works over any broker. On top of
that — and still zero-dependency — an optional App runtime
(publish/consume/worker loop) and transport modules for all seven brokers are
available when you want them.
What you get
- Canonical, schema-validated JSON envelopes (
schema_version: 1) — no language lock-in. - A built-in
trace_idon every message for cross-service correlation. - URN routing (
urn:babel:<context>:<event>) on a stable key. - Zero dependencies in the core (standard library only) — bring your own broker client.
- An optional
Appruntime + transport modules for Redis, RabbitMQ, Amazon SQS, Azure Service Bus, Apache Pulsar, Apache Kafka and Apache ActiveMQ/Artemis — opt in when you want publish/consume instead of just the codec. See Runtime & transports. - Framework adapters —
…/asynqand…/machinerybind the codec to those Go task queues.
Continue to Installation.