Many open source developers will agree that contributing to open source is a “when-I-have-time” labor of love rather than an actual means of earning a living. At the same time, open source projects often struggle with building and maintaining a collaborative community over time.
Waffle.io and Bountysource.com are two tools aimed at solving these underlying issues. Used together, Waffle and Bountysource provide a powerful toolset for obtaining and maintaining a community of active contributors.
Bountysource is the funding platform for open source software. The platform will aggregate all of your open source project’s issues, whether they are hosted on GitHub, Bugzilla, Trac, Jira, Google Code, Launchpad, Pivotal Tracker, and/or BitBucket.
There are three ways to fund your open source project on Bountysource — fundraisers, project donations, and bounties.
Fundraisers are time-limited campaigns with a specific funding goal and are usually framed around the next big release or rewrite of a project. Fundraisers are a great way to gather early support and funds for open source developers to pursue development of high demand software.
Project donations are direct contributions to a project’s Team account on Bountysource. Project donations can be given at any time to support an open source project and its long term development.
Bounties are crowdfunded amounts of money tied to specific issues within a project’s issue tracker. Bounties are often posted by users who own or heavily rely on a specific project. They serve as an extra encouragement to developers looking to contribute to the project, and also help project maintainers prioritize their roadmap. Bounties are paid out to the developer who resolves the issue, meaning they can be awarded to any contributor of the project, not just official collaborators.
On the other side of the spectrum, developers can set Bounty Goals on issues they’d like to work on. The community can then crowdfund the bounty to meet the Bounty Goal, encouraging the developer to begin working on his solution.
The Neovim project (a user of both Waffle and Bountysource) raised over $33,000 from nearly 1,000 backers to fund its development. This new community has continued to support the project (which now has over 8,000 stars on GitHub) with project donations, which are then used by the Neovim team to post bounties on the most popular feature requests.
Waffle.io is a GitHub-powered work tracking tool for software developers. If you use GitHub Issues already, you can seamlessly turn your GitHub Issues into a kanban-style board where you can track issues that are in the backlog, ready to be worked on, in progress, or complete.
Many popular open source projects, including Neovim and the Ionic Mobile Development Framework, have had great success using Waffle for their open source repositories. Why do they love Waffle for their open source projects? Neovim founder Thiago Arruda explained to us in an earlier blog post that open source projects need tools outside of what GitHub provides for community building. At some point, when there is critical mass behind an open source project, organization becomes key for attracting both users and contributors. Ionic team member, Andy Joslin, also interviewed with us and says their team loves Waffle because it provides an improved interface for visualizing and prioritizing their GitHub Issues— to the point where they rarely use GitHub’s native Issue tracking interface anymore.
Waffle has proven to be a great resource for open source projects that need a way to highlight what issues are ready to be worked on by willing contributors as well as what’s in progress at any time. Further, because Waffle uses your existing GitHub Issues as its data source, there’s no need to maintain work in an outside tool.
With the organizational powers of Waffle and the fundraising powers of Bountysource, users of both platforms can create a common place for interested contributors to give back to their favorite projects while making money too.
Bountysource users can install the Bountysource GitHub Plugin from the Tools page. This plugin will allow Bountysource to automatically edit GitHub Issues with bounty details. You can choose to add a label of your choice, add the bounty amount to the issue title, append text around placing a bounty to the bottom of all open Issues, or all of the above!
Let’s take a look at a working example of using Waffle and Bountysource together. Neovim uses the GitHub plugin to add the default label “bounty,” which can then be searched for on their Waffle board. Now all potential contributors or active collaborators can clearly see which issues have bounties attached to them!
Filtering the Neovim Waffle board by the label “bounty” returns issues with bounties
We think Bountysource + Waffle is a pretty stellar combination for the open source community. We’d love to hear if there are deeper integrations you’d like to see between the two platforms. If you’re already using either Waffle or Bountysource, please share your thoughts on using the two together in the comments below!