Skip to content
Juho Teperi edited this page May 15, 2015 · 33 revisions

Clojars provides a couple of data feeds which you might find useful.

API

Data on a given artifact can be retrieved via: /api/groups/:artifact-id providing an appropriate header format: JSON, EDN or YAML.

Endpoints

Users

https://clojars.org/api/users/{{user}}

https://clojars.org/api/users/deraen

Groups

https://clojars.org/api/groups/{{group_name}}

https://clojars.org/api/groups/cljsjs

Artifacts

https://clojars.org/api/groups/{{artifact_name}}
https://clojars.org/api/groups/{{group_name}}/{{artifact_name}}

https://clojars.org/api/artifacts/leiningen
https://clojars.org/api/artifacts/cljsjs/react

curl -H "Accept: application/json" https://clojars.org/api/groups/pdfboxing

JSON search results

http://clojars.org/search?q=incanter&format=json

Tack &format=json on the end of the normal search URL to get a JSON version of the results.

List of POM files

http://clojars.org/repo/all-poms.txt
http://clojars.org/repo/all-poms.txt.gz

It looks like this:

./compojure/compojure/0.3.2/compojure-0.3.2.pom
./compojure/compojure/0.4.0-SNAPSHOT/compojure-0.4.0-20100308.145053-1.pom
./compojure/compojure/0.4.0-SNAPSHOT/compojure-0.4.0-20100308.145053-2.pom

List of jars and versions (in Leiningen syntax)

http://clojars.org/repo/all-jars.clj
http://clojars.org/repo/all-jars.clj.gz

It looks like this:

[compojure "0.3.2"]
[compojure "0.4.0-SNAPSHOT"]
[concurrent "1.3.4"]

Useful extracts from the POMs

http://clojars.org/repo/feed.clj.gz

The format is Clojure maps, one per line. It looks like this:

{:versions ["1.1.0" "1.1.0-SNAPSHOT"], :scm {:connection "scm:git:git://github.com/technomancy/swank-clojure.git", :developer-connection "scm:git:ssh://[email protected]/technomancy/swank-clojure.git", :tag "da6cb50944ba95940559a249c9659f71747312fb", :url "http://github.com/technomancy/swank-clojure"}, :description "Swank server connecting Clojure to Emacs SLIME", :artifact-id "swank-clojure", :group-id "swank-clojure"}
{:versions ["1.0.0-SNAPSHOT"], :scm {:connection "scm:git:git://github.com/timothypratley/tjpext.git", :developer-connection "scm:git:ssh://[email protected]/timothypratley/tjpext.git", :tag "0afe7de60218d2a7fbf5ddd510a3644350b06cf6", :url "http://github.com/timothypratley/tjpext"}, :description "TJP Extensions for Clojure", :artifact-id "tjpext", :group-id "tjpext"}

Lucene index of Maven artifacts

Generated by the Nexus Indexer. This should be usable by M2eclipse, Netbeans, Nexus etc for searching jars.

http://clojars.org/repo/.index/

See Sonatype’s blog post for more about how to use this.

Rsync the whole Classic repository

If you want an offline copy of the entire repository, you can grab it, or update it with rsync:

rsync -av clojars.org::clojars my-wonderful-copy-of-clojars

Note that the Classic repository should be a superset of the Releases repository.

Clone this wiki locally