2018-10-31 07:36:45 +00:00
# How to contribute
2017-08-07 11:08:39 +00:00
2019-03-08 13:09:09 +00:00
Contributions are welcome!
2017-08-07 11:08:39 +00:00
2019-03-08 13:09:09 +00:00
* Please file bug reports and feature requests to https://github.com/metosin/reitit/issues
* For small changes, such as bug fixes or documentation changes, feel free to send a pull request.
* If you want to make a big change or implement a big new feature, please open an issue to discuss it first.
If you have questions about contributing or about reitit in general, join the [#reitit ](https://clojurians.slack.com/messages/reitit/ ) channel in [Clojurians Slack ](http://clojurians.net/ ).
2017-08-07 11:08:39 +00:00
2018-10-31 07:36:45 +00:00
## Environment setup
1. Clone this git repository
2. For CLJS support, install NPM dependencies: `npm install` .
2017-08-07 11:08:39 +00:00
## Making changes
* Fork the repository on Github
* Create a topic branch from where you want to base your work (usually the master branch)
2019-05-22 16:58:03 +00:00
* Check the formatting rules from existing code (no trailing whitespace, mostly default indentation)
2017-08-07 11:08:39 +00:00
* Ensure any new code is well-tested, and if possible, any issue fixed is covered by one or more new tests
2018-10-31 07:36:45 +00:00
* Verify that all tests pass using `./scripts/test.sh clj` and `./scripts/test.sh cljs` .
2017-08-07 11:08:39 +00:00
* Push your code to your fork of the repository
* Make a Pull Request
2019-05-22 16:58:03 +00:00
For more development instructions, [see the manual ](https://cljdoc.org/d/metosin/reitit/CURRENT/doc/misc/development-instructions ).
2019-03-08 13:09:09 +00:00
2017-08-07 11:08:39 +00:00
## Commit messages
1. Separate subject from body with a blank line
2. Limit the subject line to 50 characters
3. Capitalize the subject line
4. Do not end the subject line with a period
5. Use the imperative mood in the subject line
- "Add x", "Fix y", "Support z", "Remove x"
6. Wrap the body at 72 characters
7. Use the body to explain what and why vs. how