Have you ever thought about trying to centralize your project management process using GitHub? It can be a challenge to manage tasks across apps and one of the things we’ve been looking for at Lift is a way to manage the full lifecycle of a project using GitHub entirely. Since we are primarily a company that uses code and design to solve problems, it makes sense to streamline our process by limiting the number of web applications we rely on for day-to-day operation.
Since beginning the research process, we have come across a few tools that allow project managers to organize GitHub Issues into a more agile workflow. I’m going to present and discuss the pros and cons of the apps we’ve tried thus far and which to choose for your organizational or personal use.
The idea of using Github for project management is interesting to us because we have a habit of building customized project-based apps for clients. We just completed a custom app for Frito-Lay’s creative department and wrote up a mini case study explaining how we did it using WordPress, some great plugins, and a completely rebranded admin area.
Waffle bills itself as a full project management solution that works automatically by adding a simple board view for your GitHub Repositories with Issues already organized into boards when you sign up. This simple automation makes it easy to get up and running. For example, I added a project and instantly saw multiple issues scoped into the first column marked “Backlog” and two items marked as “Closed” without having to do anything.
In addition to the default automated board view, you can also customize the columns to adhere to your own process. The main benefit I see to this particular app, though, is the beautiful user interface offering easy-to-use functionality and the automation of the setup process.
The one slightly major issue I saw with Waffle is this: when I first add a repository, I am taken to a blank screen. I then have to click the waffle icon to return to the homepage and click on the repository name again to load the board. It’s not a major problem for me as long as it works, but it looks like a bug in the way they load the API for the first time.
Another downside is the lack of a more useful “project overview” screen. There is a way to see all connected repos from the dashboard, but not all issues currently assigned or a per-person view. Project managers love to see the big picture. Without it, they will struggle to get a grasp on what each person has on his or her plate. Organizations with lots of repositories could see a lot of fragmentation across their projects with this app.
$7/mo. per user when dealing with private repos but free for public repos, no user limit. Though, the company states on it’s signup page that it is not currently charging for private repository users just yet so it is currently free to try for all plans.
Huboard is probably the most popular option out of the available choices. It essentially gives you a Kanban board to organize Issues into various states by dragging and dropping them into columns. It isn’t the prettiest interface but it certainly functions as advertised by allowing you to easily view your board and rearrange tasks as needed. It also integrates with Slack (which we use) and Gitter, two communication apps for internal team chat.
In terms of features, it seems to be quite robust and includes multi-faceting filtering to display issues based on a set of criteria you pick from the left column, making it easy to narrow down issues with very specific attributes. Like all the others, it has drag-and-drop support, making it easy to move issues to the appropriate column.
The one downside to Huboard is the price. It is one of the higher priced options at $24/mo. per organization and $7/mo. for a single user with unlimited teams and repos (both public and private).
Updated 12/10/2014: TaskTub has closed down and is no longer available.
TaskTub is almost exactly the same as Huboard but feels less complete in terms of features and user interface. While the product works as advertised, it could definitely use some work to enhance both the visual appeal and usability of the tool.
One of my favorite features is the ability to create issues two different ways. First, the “story” method, which involves a sort of “mad libs” approach to solving problems by defining the user persona and goals that need to be achieved, creating a new issue from the story you’ve just entered. This makes it easy to define the desired outcome to avoid running into the Law of the instrument.
Additionally, you can create simple “tasks” that can be bugfixes or just things that need to be addressed. This allows you to enter an issue in a more traditional manner.
TaskTub is priced quite reasonably at just $10/mo. per organization and $100/mo. if you pay annually, however, it does not have any integrations with internal messaging tools like Huboard does, so the choice will really depend on whether you need those integrations or just need a simple tool for organizing tasks.
The last tool I’m going to mention is the one I’m most intrigued by. ZenHub is another tool that is similar to both Huboard and Tasktub, however, it is quite unique in how it works. I haven’t used this one much, however, there are two things that jump out to me that sound glorious:
1. It’s a browser extension that modifies the GitHub interface.
free (and apparently always will be) a 30-day trial and costs $25/mo. for 1-5 users and $5 per user beyond that.
ZenHub works by adding functionality directly to the GitHub interface. You log in to GitHub and see a modified interface with new tools at your disposal. By simply adding features to GitHub’s interface, ZenHub allows you to manage issues directly from the native interface (which I prefer). Using GitHub’s native web application will always trump third-party tools, in my opinion, because you don’t have any API limits (such as 5000 API requests per hour) and will always have the most up-to-date data and features.
ZenHub offers issue boards, similar to the other products, but also adds a few usability enhancements to GitHub, which I love. The first enhancement is the ability to vote on issues, allowing team members to +1 an issue. This is extremely helpful when deciding which issues are most important to your team to address without having to “triage” them.
The second enhancement I like is the quick switch drop-down, allowing you to quickly move between repositories. This feature is indispensable and I’m now wondering why GitHub hasn’t yet picked up on this and added it themselves. It is extremely useful for an organization with a ton of repos (like ours). There are a number of other features that offer great flexibility in the way you view your issues. Read more about ZenHub features here.
One feature that ZenHub touts on its website is the ability to upload a file simply by dragging and dropping a file into the comment editor. GitHub recently added this feature so I would assume it is now redundant but it may offer a higher file upload limit.
UPDATE: The creators of ZenHub reached out and noted that GitHub only allows users to upload images, while their uploader allows other file types to be uploaded as well.
Ultimately, the choice of which tool to use comes down to features and price. If you like staying within the native GitHub application, ZenHub is the tool for you (not to mention it’s also the cheapest option). But if you’re looking for something with Slack or Gitter integration, Huboard would be a good choice though it is definitely the highest-priced.
Did I miss anything?
Are there any other apps out there you’ve seen for managing projects with GitHub? Tweet at me with additional recommendations: