We at Bitovi love open source. We build powerful tools and open source them to support the community. We dedicate full-time resources to developing open source projects that help anyone build usable, performant, and maintainable web applications…
…and we can’t do it without you.
Our projects depend on contributors like you to report bugs, answer questions, fix issues, and implement new features! Contributing to an open source project can be an intimidating experience, but we’re committed to making it as pleasant and rewarding as possible.
In this post I want to discuss some recent changes we’ve made (and are still working on!) to improve the experience of contributing to our open source projects.
DoneJS is the “umbrella” framework that all of our open source projects fall under, and we’ve recently added a contribution guide that has details on how to get help, report bugs, change the code, and more. It starts off with our Code of Conduct, which reflects our dedication to fostering an open and welcoming environment. As contributors and maintainers, we pledge to make participation in our project and community a harassment-free experience for everyone.
It’s common to include a CONTRIBUTING.md file that explains how to file a bug report, suggest a new feature, get the repository (repo) running locally, etc. We’re in the process of adding CONTRIBUTING.MD files to all of our repos so they’re all easy to get started with.
Issue and pull request templates
All of our repos are on GitHub and we’ve started to implement issue and pull request templates for each one. When you create a new DoneJS issue, the description has all the details you need to fill out if you’re reporting a bug:
The template also encourages you to label the issue as a bug, enhancement, or question.
We also added a template for when you’re creating a pull request (PR). It encourages you to include documentation and/or test updates, as well as a link to the issue(s) your PR addresses and a screenshot or gif to demonstrate the change.
We’re in the process of adding these templates to all of our repos, and you can help! Adding the templates is as easy as adding a .github folder with a couple files, and we’ve already done it in a couple repos that you can look at as an example.
Labels are used on GitHub to communicate information about issues and make them easier to find. We use a few labels to organize issues across all of the repos:
- “help wanted” for any issues with which the core team would like help
- “easy” for issues the core team thinks are good for someone who’s new to contributing
- “documentation” for issues related to documenting the APIs
- “design” for issues that could use a designer’s expertise
The DoneJS Contribution Guide has a section on how to find open issues. If you’re interested in contributing to any of our projects, that part of the guide is a great starting place for finding issues to work on, whether you want to help with fixing bugs, improving the documentation, or applying your design talent!
Join our community!
If you’re interested in contributing to DoneJS, the core team is happy to pair with you to fix a bug or write a new feature! Please either message us on Gitter or the forums, or leave a comment on the GitHub issue you’re interested in helping with. We will happily walk you through setting up your development environment, creating a test and/or writing documentation, and submitting a pull request. We want to make your experience as pleasurable and fulfilling as possible, especially if it’s your first time contributing to open source!