Thanks for considering contributing to backstop-crawl
. It's just small project but we're always open to new ideas or bug fixes. Keep reading to find out how to get involved.
Following these guidelines helps to communicate that you respect the time of the developers managing and developing this open source project. In return, they should reciprocate that respect in addressing your issue, assessing changes, and helping you finalise your pull requests.
Contributions can come in many forms, and we're happy to review any ideas you might have. Improving documentation, bug triaging, or writing tutorials are all examples of helpful contributions.
- Ensure cross-platform compatibility for every change as much as possible.
- Ensure that code that goes into core passes all the tests and new code gets new tests.
- Create issues for any major changes and enhancements that you wish to make. Discuss things transparently and get community feedback.
- Keep feature versions as small as possible, preferably one new feature per version.
- Be welcoming to newcomers and encourage diverse new contributors from all backgrounds. See the Code of Conduct.
Unsure where to begin? You can start by looking through the issues, especially issues with the ready
or pr welcome
. Try to avoid and issues that are labelled as in progress
or are assigned to someone else.
Working on your first Pull Request? You can learn how from this free series How to Contribute to an Open Source Project on GitHub
At this point, you're ready to make your changes! Feel free to ask questions or for help; everyone is a beginner at first 😸
For something that is bigger than a one or two line fix:
- Create an issue so that we can discuss whether it would be a good fit for the project. We don't want to waste any of your time.
- Create your own fork of the code
- Do the changes in your fork
- Write tests for your changes, ensuring all tests pass and the code coverage doesn't fall.
- Submit a pull request that explains the what and why
- Wait for a maintainer to review that changes, at which point they might:
- Ask for changes
- Merge the pull request
Please be aware that maintainers can be busy and large changes can be time consuming to review. Don't get discouraged if it takes a long time to review, changes are required, or the pull request is declined. We're very grateful for any input.
For something small:
Small changes are great and easy to review, so just submit a pull request You can either do the whole fork/pr process outlined above or you can use the GitHub website editor. Passing tests and code coverage still matter!
If you find a security vulnerability, do NOT open an issue. Email [email protected] instead.
Before creating an issue, search the issues in case someone else has already made one on the same topic. It's better for everyone if the discussion can be focused in one location.
When reporting a bug, make sure to answer these five questions:
- What version of
backstop-crawl
are you using? - What version of node are you using?
node -v
- What operating system are you using?
- What did you do?
- What did you expect to see?
- What did you see instead?
backstop-crawl
is a tool that should make it as easy as possible to get started with regression testing, or retroactively add regression testing.
If you have an idea for a feature that would aid these ideals you can open an issue detailing the feature you'd like to see, why you need it, and how it should work. If you're going to start work on the feature you should mention this and assign the issue to yourself.
Issues and Pull Requests are reviewed ad hoc. Don't get discouraged if no one seems to be replying, they are probably just busy.
To make reviews as easy as possible for maintainers please make sure you're following the guidelines above. Maintainers might ask for changes and will do their best to explain why. While we're open to discussion, maintainers have the final word. Maintainers hold full rights to close issue and reject pull requests. They are under no obligations to you.
Once a maintainer has reviewed and okayed a pull request it will be merged into master and published on the next release.
Thanks again for considering contributing to backstop-crawl
❤️