title: How we organize GitHub issues: A simple styleguide for tagging
For people who make software, the internet has no shortage of best practice for workflow organization like Git Flow, release versioning, etc. When you get to the topic of issue management, the reading material plummets.
At Robin, GitHub issues are the core of just about every action the team takes. Over the past year, we’ve worked out an internal tagging system that keeps engineering and product efforts organized across repositories on Github. We’re sharing the current iteration (and it will keep changing) in case your team is looking for some workflow inspiration.
We group labels by color, according to broad themes. Labels are consistent across repositories, except for a few language specific topics. This makes switching between projects easy, since you don’t need domain expertise in order to write an issue. New team members can learn the system once, and use it everywhere.
If the repository covers multiple parts, this is how we designate where the issue lives. (i.e. iOS and Android for cross-platform tablet app).
Issues that make the product feel broken. High priority, especially if its present in production.
Converting measurements, reorganizing folder structure, and other necessary (but less impactful) tasks.
Affect user’s comprehension, or overall enjoyment of the product. These can be both opportunities and “UX bugs”.
Server environment. With good QA, you’ll identify issues on test and staging deployments.
Requires further conversation to figure out the action steps. Most feature ideas start here.
Iterations on existing features or infrastructure. Generally these update speed, or improve the quality of results. Adding a new “Owner” field to an existing “Calendar” model in the API, for example.
Brand new functionality. New pages, workflows, endpoints, etc.
Taking action, but need a few things to happen first. A feature that needs dependencies merged, or a bug that needs further data.
No action needed or possible. The issue is either fixed, addressed better by other issues, or just out of product scope.
See a version of this in action on one of our public repos.