TL;DR: ZenHub is a browser extension that enhances every GitHub workflow with features built specifically for fast-moving engineering teams: customizable Kanban-like boards; unlimited file uploads; a +1 button added to every GitHub Comment, Issue, and Pull Request; and several other useful features. It's free, and available at zenhub.com
Axiom Zen is less than two years old. To some that makes us a startup, but we’re not the usual kind of startup -- most of our team members, who come from all corners of the world, have the battle scars to prove it.
This is a story about ZenHub: a labor of love that has become an irreplaceable part of our team's daily workflow.
GitHub: a Developer’s Nirvana?
For most modern software organizations, GitHub is where developers live. Given that every company in the world will eventually be a software company (Software is Eating the World - WSJ), it's not a surprise that GitHub is valued at $1B+ by some very smart people.
GitHub offers a very clean and effective workflow, without the bells and whistles (and corresponding painful user experiences) of more "full-featured" project management suites. This simplicity has led to GitHub's enduring success: an agile process frees strong team members to produce great work.
The GitHub team have produced persuasive videos extolling the benefits of adopting their philosophy.
We bought in. Freed from the burdens of process, our engineers became self-organizing with Issues and Pull Requests, and our product team's productivity went through the roof. No more painful project management meetings.
GitHub is not perfect
When our team started using GitHub, it wasn't without hiccups: non-coding members of the team asked very good questions about GitHub's suitability as a strategic tool and highlighted important features that everyone agreed were lacking in GitHub as a team-wide solution.
Our complaints were multi-pronged but specific; straightforward enough to address. We decided to build what we need as ZenHub.
So what does ZenHub do?
This blog post is the first time we’re really explaining it.
In short, ZenHub is a supercharger for GitHub. The product is a browser extension that injects advanced functionality including customizable kanban-like boards, file uploads and more, seamlessly into the GitHub interface. ZenHub allows us to centralize all processes into GitHub, keeping our team lean and nimble.
We'll cover three main components of ZenHub in this post, leaving a few easter eggs for you to find on your own: ZenHub Boards, our replacement for products like Trello; ZenHub +1, the greatest thing since sliced bread; and ZenHub File Uploads, something GitHub should just build in natively. Allons-y:
ZenHub Boards: a strategic, visual layer around GitHub Issues
GitHub is a very powerful tactical product, but could use some beefing up as a strategic tool. It is difficult to prioritize Issues, cumbersome to track an Issue’s progress through pre-defined stages, and clunky to integrate with other, more visual tools (like Trello for example). Most larger teams that use GitHub are forced to pair it with a legacy project management suite or rely on integrations, bouncing back and forth between a "strategic" view and GitHub, the place they have to be in anyway.
ZenHub Boards changes the paradigm by adding a customizable, drag-and-drop kanban-like board for each repo seamlessly within GitHub’s interface, fully integrated with the GitHub API.
It’s very pretty – and functional:
ZenHub +1: reduce comment clutter and supercharge feedback
GitHub’s feature sparsity also leads to comment clutter. We noticed so many of our GitHub threads get overwhelmed with one- or two-word comments (“i agree!”, “second that”, “+1”). For issues that involve voting, someone would have to literally sit there and add up replies in the comment thread! We also had no easy way to quickly get a higher-level view of how popular a particular idea was, or how much support there was for certain projects versus others.
Since we work very collaboratively, this was a big pain for us. Even more so because we have remote team members who work in different time zones. In addition to prioritization, we really wanted an easy and quick way to show appreciation asynchronously – again without cluttering up comment threads.
Someone said “we should have a like button for GitHub!” and +1 was born.
ZenHub File Uploads
If you use GitHub, you know that it allows certain types of images to be uploaded, but blocks all other file types. This allows for basic communication between designers and engineers on GitHub, but totally breaks down for anything more sophisticated.
ZenHub pipes file uploads directly to Amazon S3. Now, Photoshop or Illustrator files are easy to upload, as are PDFs and Office documents, even Zip files. We can use GitHub for everything, perhaps most importantly sharing resumes of prospective hires and getting the entire team involved in the recruiting and team building process.
Give us a try (free!)
Heard enough? Give us a try, and don't hesitate to reach out with comments / suggestions!