Langohr is an experimental Clojure wrapper around the RabbitMQ Java client that embraces AMQP 0.9.1 Model and does not try to hide it behind many layers of DSLs.
- Embrace AMQP 0.9.1 Model. Follow Java client's API conventions instead of inventing new overly opinionated ones
- Provide additional functions/protocols where it actually saves time (we learned a lot from 3 years history of the Ruby amqp gem development)
- Be well documented. Two example READMEs do not cut it
- Strict TDD development style (with tests sometimes being freeform examples first)
- Support all of the RabbitMQ extensions to AMQP 0.9.1
- Provide additional batteries such as CLI interface to AMQP operations
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 AMQP machinery from developer
- A port of Ruby amqp gem to Clojure
Supported Clojure versions
Langohr is built from the ground up for Clojure 1.3 and up.
This is a Work In Progress
Langohr is very much a work in progress and without most of key AMQP operations being supported, proper test suite and documentation guides, there is nothing to see here, really.
CI is hosted by travis-ci.org
Since these are very early days of the library, it is fair to say that it is completely unusable to anyone other than the author.
Copyright (C) 2011 Michael S. Klishin
Distributed under the Eclipse Public License, the same as Clojure.