jschan - Anonymous imageboard software. Classic look, modern features and feel. Works without JavaScript and supports Tor, I2P, Lokinet, etc.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.6 KiB

3 years ago
# Contributing
Thanks for considering contributing.
Some links:
* [Kanban board](https://gitgud.io/fatchan/jschan/-/boards/4780) already has issues in swim lanes.
* IRC: [irc.fatpeople.lol #general](ircs://irc.fatpeople.lol:6697/general)
3 years ago
## LICENSE?
See [LICENSE](https://gitgud.io/fatchan/jschan/-/blob/master/LICENSE)
## Making changes
* Bug? Open an issue.
* Request? Open an issue and ask. Saves wasting your time making changes that will be denied for being bad or unwanted.
When contributing, make a merge request with a clear list of what you've done.
Write clear commit messages. One line is fine for smaller changes, or multiple lines for bigger changes. Be clear and concise.
$ git commit -m "A brief summary of the commit
>
> A paragraph describing what changed and its impact."
## Coding conventions
Read the code to understand, but basically:
* [standardjs](https://standardjs.com/) style for the most part, with some modifications.
* TAB for indentation.
* Please include comments.
## Running tests
Make sure these still pass after your changes, or adjust them to meet the new expected results.
There is a "jschan-test" service in the `docker-compose.yml` file that will run all the tests in a jschan instance using the docker instance. See the advanced section of installation for some instruction on how to use this.
You can also Run them locally if you have an instance setup (or for quickly running unit tests):
```bash
#unit tests only
npm run test
# OR npm run test:unit
#integration tests only
npm run test:integration
#all tests
npm run test:all
#specific test(s)
npm run test:all <filename|regex>
```
3 years ago
Thanks,
Tom