Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
48 lines (29 sloc) 1.07 KB


A robust Solr query API for Clojure.

Getting Started

Add [icarus "0.1a"] to project.clj.

Example queries

(do-search "" (build-queryset (filter :city ["Indianapolis"
           {:rows 10 :fl "city,population,state"})

Composable queries

(def query1 (filter :city "Springfield"))
(def query2 (filter :state "Florida"))

;; Join the two query nodes with logical AND via ``-&`` or logical OR
;; via ``-|``
(do-search "" (-& [query1 query2])
           {:rows 10 :fl "city,population,state"})


Icarus is built on top of Clojure-Solr. The Icarus API is a more flexible interface to perform search via Solr, with a focus on expressing queries of arbitrary complexity in a clean, simple way.


Copyright (C) 2012 Matt DeBoard

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