Skip to content

A small, feature complete Clojure client for RabbitMQ that embraces AMQP 0.9.1 model

Notifications You must be signed in to change notification settings


Repository files navigation

Langohr, a feature-rich Clojure RabbitMQ client

Langohr is a Clojure RabbitMQ client that embraces AMQP 0.9.1 Model.

Project Goals

  • Embrace AMQP 0.9.1 Model. Follow Java client's API conventions instead of inventing new overly opinionated ones
  • Be well documented. Use Ruby amqp gem guides as a foundation.
  • Be well tested.
  • Error handling and recovery should be well covered
  • Support all of the RabbitMQ features, include extensions to AMQP 0.9.1.
  • Make error handling and recovery easier

We've learned a lot from over 6 years history of the Ruby amqp gem, Bunny, and RabbitMQ Java client development and try to apply this experience to Langohr design.

Project Anti-Goals

Here is what Langohr does not try to be:

  • A replacement for the RabbitMQ Java client
  • Sugar-coated API for task queues that hides all the protocol machinery from the developer
  • A port of Bunny to Clojure


Langohr artifacts are released to Clojars. If you are using Maven, add the following repository definition to your pom.xml:


The Most Recent Release

With Leiningen:

Clojars Project

With Maven:


Documentation & Examples

If you are only starting out, please see our Getting Started guide.

Documentation guides:

API Reference

For existing users, there is API reference.

Code Examples

Several code examples used in the guides are kept in a separate Git repository.

Our test suite also can be used for code examples.

Supported Clojure Versions

Langohr requires Clojure 1.6+. The most recent stable release is highly recommended.

Supported RabbitMQ Versions

Langohr depends on RabbitMQ Java client 5.x and requires a supported RabbitMQ version.

Project Maturity

Langohr has been around since 2011. The API is stable.


Langohr has a mailing list. Feel free to join it and ask any questions you may have.

To subscribe for announcements of releases, important changes and so on, please follow @ClojureWerkz on Twitter.

Langohr Is a ClojureWerkz Project

Langohr is part of the group of libraries known as ClojureWerkz, together with

Continuous Integration

Continuous Integration status Dependencies Status




Copyright (C) 2011-2022 Michael S. Klishin and the ClojureWerkz Team.

Double licensed under the Eclipse Public License (the same as Clojure) or the Apache Public License 2.0.