cljdoc betacljdoc logo

is a website building & hosting documentation for Clojure/Script libraries

Read the rationale or check out some examples: re-frame, compojure, clojure.java-time.

Automated Docs

cljdoc builds documentation for new releases that are pushed to Clojars within minutes. Ever forgot to update your docs after a release? No more.

→ Basic Setup

Articles & More

Seamless integration of articles and tutorials from Markdown and Asciidoc source files.

→ Articles

Offline Docs

Download documentation for any project in a zip file for easy offline use while travelling or swinging in your hammock.

→ Offline Docs

Specs, Examples, ...

In the future cljdoc may incorporate more than just API docs and articles. Specs and examples are high on the list.

→ Roadmap

Library Authors

Learn how to publish your docs to cljdoc, integrate tutorials and other material and add a badge to your project's Readme.

Documentation for Library Authors →

Library Users

Learn where to find documentation, how to download it for offline use and more.

Documentation for Library Users →
↓ More Features ↓

Docs for every Clojure library available at a predictable, consistent location.

(str "https://cljdoc.xyz/d/"
     (:group-id your-project) "/"
     (:artifact-id your-project) "/"
     (:version your-project))

Platform-aware documentation, clearly indicating when things differ between Clojure & Clojurescript.

Example of platform aware documentation with rum.core

Documentation links are always tied to a specific version and old versions are kept available.

https://cljdoc.xyz/d/bidi/bidi/2.1.0https://cljdoc.xyz/d/bidi/bidi/2.1.1https://cljdoc.xyz/d/bidi/bidi/2.1.2https://cljdoc.xyz/d/bidi/bidi/2.1.3

Open Source, so the community can work together to improve or even fork cljdoc.

cljdoc is created by its contributors. Say hi in #cljdoc on Slack. Report issues on GitHub.

Support cljdoc on OpenCollective.