Skip to content
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
Cannot retrieve contributors at this time

cljdoc roadmap

Spec Integration

Integrating clojure.spec in some way could be very useful. With an appropriate storage and query layer we might even be able to provide Hoogle style navigation from a functions args and return specs to functions returning/accepting data in that shape.

See #67 for some further discussion/status.


Examples have proven very useful, in particular for documenting clojure.core on cljdoc could also provide ways to attach examples to namespaces, individual vars etc. While challenging interactive examples are also an interesting angle to explore.

See #70 for some further discussion/status.

Documentation Highlights

Some namespaces, vars or articles might be more interesting than others because they are better documented, or just display the core functionality of a library. cljdoc could infer (or provide ways to configure) items that should be highlighted for users, allowing them to find relevant documentation quicker.

See #56 for some further discussion/status.

New Storage Backend

cljdoc currently uses Grimoire for storage which has been designed to store metadata on namespaces and vars. While this has been extremely useful in the beginning it is now somewhat limiting when it comes to implementing features like the aforementioned clojure.spec integration, examples and more.

Likely this issue will need to be tackled before those features can be built. The storage layer has already been refactored into a protocol so swapping it with something new should be possible without touching code in lots of places.

All of the above issues and perhaps more are tagged with the Hammock label.