Prioritizing issues with 👍s, ❤️s and 🎉s

Analyzing Github Issue Reactions using Node.js, Pipedream, Google Sheets, and pandas

At Pipedream, we use Github Issues to track feature requests, bugs, and new app integrations.

Anytime a user has a new idea, we send them to the roadmap to make sure the idea gets captured.

Anytime someone suggests an idea that’s already been captured, we send them to the roadmap to add a reaction (a 👍, ❤️ or 🎉) to the issue.

We’re diligent about pushing people to the roadmap because we want to prioritize the most requested items. Reactions are the best way to collect that data.

Unfortunately, Github doesn’t provide high-level dashboards on issue reactions. You can sort issues by the total number of reactions in the Issues UI:

is:issue is:open sort:reactions-desc

but you can’t see the reaction count without digging into the issue itself:

Nor can you compare the count of reactions across issues.

To help us prioritize the right issues, we needed to answer question like:

What are the top issues this week? (What should we be focused on?)

(What should we be focused on?) What issues are trending this week? (Even if it’s not in the top 5, is there an issue getting lots of love this week we should be paying attention to?)

(Even if it’s not in the top 5, is there an issue getting lots of love this week we should be paying attention to?) Who’s opening the most issues? Who’s reacting to the most issues? (Who are the most engaged users, and how can we prioritize their issues and get more feedback?)

We built a workflow to collect this data, and a Google sheet and Jupyter notebook to drive the analysis. I’ll show you how this works and how to use it for your own repo.

Pulling Issue Reactions, saving to Google Sheets

This Pipedream workflow pulls reactions for all open issues in your repo once a day, saving them to a Google Sheet where can run more analysis: