8000 GitHub - daveliepmann/cljdoc: A future central documentation hub for the Clojure community 🙌
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

daveliepmann/cljdoc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cljdoc

CircleCI

An effort to create a central documentation hub for the Clojure & ClojureScript ecosystem.

Rationale

TODO (:sweat_smile:)

Design

  • an ecosystem-encompassing Grimoire store serves as single source of truth
  • that Grimoire store is updated when new releases are published to Clojars or other relevant information changes
  • various tools can be built on top of data in this Grimoire store
    • it acts as a repository for static analysis done on Clojure code

ADRs

I've been looking for an opportunity to use ADRs for some time, you can find them all in doc/adr/.

Quickstart for potential contributors

  • build.boot contains various entry points into the code, most interesting is probably build-docs which you can run with

    boot build-docs --project bidi --version 2.1.3 target
    
    • After that there will be a bunch of stuff in target/ which you may want to look at.
    • There are various sub-tasks that address different aspects of building documentation. I hope reading build-docs will give you a quick overview about all the things going on.
  • There are various specs defined in cljdoc.spec.

  • Code that needs to be loaded for analysis is in cljdoc.analysis.

  • The cache that serves as input to renderers is defined in cljdoc.cache

  • Overall resource/routing model is defined in cljdoc.routes.

I often choose to refer to functions with their fully qualified name. I hope this makes reading the code easier.

I outlined some areas that could use help in CONTRIBUTING.md

Configuration

We use aero for configuration and several modes of operation are possible:

  • You should always, without any further steps be able to clone this repo and generate documentation locally using:

    boot build-docs --project bidi --version 2.1.3 target

    If this does not work, it's a bug.

  • The cljdoc API server requires some additional configuration as it will upload files to an S3 bucket and run analysis of jars on CircleCI instead of on the local machine. The additional configration can be placed into resources/secrets.edn or supplied via the environment variables specified in that file. Once these steps are completed you should be able to run the server using

    CLJDOC_PROFILE=live boot start-api

License

EPL-2.0 see LICENSE

About

A future central documentation hub for the Clojure community 🙌

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Clojure 83.1%
  • Shell 7.9%
  • HCL 7.1%
  • CSS 1.1%
  • Other 0.8%
0