Contributing
Issues
Report issues and suggest features and improvements on the GitHub issue tracker. Don’t ask questions on the issue tracker - use the support channels instead.
If you want to file a bug, please provide all the necessary info listed in our issue reporting template (it’s loaded automatically when you create a new GitHub issue).
Patches
Patches in any form are always welcome! GitHub pull requests are even better! :-)
Before submitting a patch or a pull request make sure all tests are passing and that your patch is in line with the contribution guidelines.
Documentation
Good documentation is just as important as good code.
Consider improving and extending this manual.
Working on the Docs Site
The documentation site is generated from the AsciiDoc files in the doc folder of nREPL’s GitHub repo and is published to https://nrepl.org. Antora is used to convert the manual into HTML. The filesystem layout is described at https://docs.antora.org/antora/2.0/component-structure/.
To make changes to the manual you simply have to change the files under doc
.
The site will be regenerated manually periodically.
Installing Antora
The instructions here assume you already have (the right version of) node.js installed. |
Installing the Antora is super simple:
$ npm i -g @antora/cli@2.3 @antora/site-generator-default@2.3
Check out the detailed installation instructions if you run into any problems.
Building the Site
You can build the documentation locally from the nrepl.org repo.
$ cd nrepl.org
$ antora --pull antora-playbook.yml
After you’re done with the initial setup you can use the deploy
script to push changes to the site:
./deploy
You’ll need commit access to the repository for this to work. |
To check the generated site you can simply open docs/index.html
in your favourite browser.
If you want to make changes to the manual’s page structure you’ll have to edit nav.adoc.
Testing Local Changes
By default Antora will build the documentation for nREPL’s master
branch and all recent stable
releases by fetching the data from nREPL main GitHub repository.
If you want to check changes you’ve made locally you’ll have to update the antora-playbook.yml
file in the nrepl.org
repository. There you should instruct Antora to build the docs from your
local git repo instead of the main repo on GitHub:
# you have to change this
content:
sources:
- url: https://github.com/nrepl/nrepl.git
branches: ['master']
tags: ['0.5.3', '0.6.0', '0.7.0', '0.8.3']
# to something like
content:
sources:
- url: /path/to/local/nrepl/clone
branches: ['issues/207']
start_path: doc
Funding
While nREPL is free software and will always be, the project would benefit immensely from some funding. Raising a monthly budget of a couple of thousand dollars would make it possible to pay people to work on certain complex features, fund other development related stuff (e.g. hardware, conference trips) and so on. Raising a monthly budget of over $5000 would open the possibility of someone working full-time on the project which would speed up the pace of development significantly.
We welcome both individual and corporate sponsors! We also offer a wide array of funding channels to account for your preferences (although currently Open Collective is our preferred funding platform).
If you’re working in a company that’s making significant use of nREPL we’d appreciate it if you suggest to your company to become a nREPL sponsor.
You can support the development of nREPL, CIDER, clojure-mode and inf-clojure via Open Collective, GitHub Sponsors Patreon and PayPal.
Open Collective
-
Become a backer (for individuals)
-
Become a sponsor (for companies)