Elastisch is a Clojure client for ElasticSearch, a modern distributed RESTful search engine.
- Be reasonably feature complete
- Be well documented
- Be well tested
- Closely follow recent Elastic Search releases & developments
- Be well maintained
- Learn from other clients like the Java and Ruby ones
- Target Clojure 1.3.0 and later from the ground up
We are working on documentation guides & examples site for the 1.0 release. In the meantime, please refer to the test suite for code examples.
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.
Core Elastisch APIs are not fully stabilized, it is still largely a work in progress. Keep that in mind. 1.0 will be released when we are confident in the public API, reached feature completeness and have documentation guides on a dedicated website.
<dependency> <groupId>clojurewerkz</groupId> <artifactId>elastisch</artifactId> <version>1.0.0-alpha4</version> </dependency>
If you feel comfortable using snapshots:
<dependency> <groupId>clojurewerkz</groupId> <artifactId>elastisch</artifactId> <version>1.0.0-SNAPSHOT</version> </dependency>
Snapshot artifacts are released to Clojars every few days.
Elastisch is built from the ground up for Clojure 1.3 and up.
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.
Wrapping ES Java client may produce a performance gain but we don't see that to be very useful, and following Java client conventions would likely make Elastish less Clojurish.