Thanks for being interested in contributing to Rockpool!
If you have found a bug (something that is broken, throws an error message, or seems to behave weirdly) please file a bug report by clicking New Issue in Issues. Bug reports are super useful! Use the Bug Report template and provide as much information as possible.
This is a common and annoying problem in open source software. The goal is for Rockpool to be easy to install and use, with great documentation.
If you're not sure what the documentation should say, but think there's a problem, log an issue using the Documentation template. If you would like to contribute by improving the documentation, please also log an issue but indicate in the issue that you're happy to update it. We can have a chat about the easiest way for you to do that, which may end up as a pull request or something else, depending on what suits your workflow.
Got an idea for a cool feature? Log a new issue using the Feature Request template.
Please do not make pull requests without having logged an issue and had a conversation about it first. Random pull requests are very unlikely to be merged.
All code with new features must include relevant new tests against those features, and all changed code must be run against the existing test suite and pass.
This project is tested using mocha.
If you're not sure how to write tests in mocha, have a chat with Hugh about it amd he'll give you a hand or might even write them for you.
Rockpool uses a single settings.json
file for all environments, following the Twelve-factor app principles for configs. This becomes important when running tests because there are currently four specific config values that must be correct for the tests to work:
blog_categories
must be set to["galleries", "libraries", "archives", "museums", "digital humanities", "GLAM"]
use_twitter
must be set totrue
use_mastodon
must be set totrue
deliver_tokens_by
must be set toclipboard
All other values in your settings.json
file can be set to any sensible value and tests should still work. To run tests should be as simple as running this command from the root of your project directory:
npm run test
The current test suite is not really world's best practice so if you're a mocha wizard feel free to send a pull request with improvements to the existing test suite.