Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A minimalistic Clojure client for ElasticSearch, supports both HTTP and native transports
Clojure HTML
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Elastisch, a Clojure client for ElasticSearch

Elastisch is a minimalistic Clojure client for ElasticSearch, a modern distributed RESTful search engine.

Project Goals


Elastisch 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.

Project Maturity

Elastisch is a young project, although it has been used in production since early days. Elastisch API is mostly stabilized by now. 1.0 will be released when we are confident in the public API, reached feature completeness and documentation guides site is in good shape.


Elastisch 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:

[clojurewerkz/elastisch "1.0.0-rc2"]

With Maven:


Documentation & Examples

Please see our documentation guides site.

Our test suite also has many code examples.

Supported Clojure versions

Elastisch is built from the ground up for Clojure 1.3 and up. Clojure 1.4 is highly recommended.

Elastisch Is a ClojureWerkz Project

Elastisch is part of the group of libraries known as ClojureWerkz, together with Monger, Welle, Langohr, Neocons, Quartzite and several others.

Continuous Integration

Continuous Integration status


Elastisch uses Leiningen 2. Make sure you have it installed and then run tests against all supported Clojure versions using

lein2 all test

Then create a branch and make your changes on it. Once you are done with your changes and all tests pass, submit a pull request on Github.


Copyright (C) 2011-2012 Alex Petrov, Michael S. Klishin

Distributed under the Eclipse Public License, the same as Clojure.


Why Not Just Wrap the Java Client?

Wrapping ES Java client may result in some performance gain but we don't see it to be great enough to be a significant factor for Elastisch. Following Java client conventions would likely make Elastisch less Clojuric.

Something went wrong with that request. Please try again.