Tracking org-wide issues easily

Github hooks + sync APIs that load issue data into postgres. Use metabase for project management.

For setup/installation instructions refer to: Usage guide.

How it works

This application initialises github org data and then syncs changes from github using a webhook. All this data in initialised and synced into a postgres database. Once data is in postgres, you can use metabase πŸ˜πŸŽ‰πŸ˜πŸŽ‰

hasura-issues

Webhook to upsert issue info

This github webhook will upsert issue info into postgres when issues get created/updated on github:

GET
https://app.cluster.hasura-app.io/webhook

Initialise org members

This API call will upsert members:

GET
https://app.cluster.hasura-app.io/add_org_members

Initialise org repos

This API call will upsert members:

GET
https://app.cluster.hasura-app.io/add_org_repos

Initialise issues on a repo

This API call will upsert issues from the given repo:

GET
https://app.cluster.hasura-app.io/<repo>/sync_issues

You need to call this API for each repo in the repo table.


Assumptions:


Desired metrics to be captured

Unassigned issues Triaging speed: Open issues that haven’t been assigned to people. unassigned-issues

Open issues/bugs Work load: Open issues that have been assigned to people and that are not longterm issues open-issues-bugs

Closing rate / dev Rough estimate of per developer efficiency: Time it takes for an issue to go from created to done closing-rate

Total days of work ahead / dev Closing rate * open issues: How many days in the future will the developer spend on getting their work done workload