This script is designed to aggregate all community-related issues into a single actionable list where we can keep internal notes and not duplicate our efforts. It works by:
- Fetching new issues and discussions from specified
hasura
GitHub repos - Fetching new threads from selected channels in Discord
- Taking the body of the issue or discussion and parsing it through an OpenAI model to summarize it succinctly
- Performing an ETL job via a service account to log this into a spreadsheet available to everyone in the org
Hasura employees can access the file containing the values generated from this script here.
This runs each hour on the hour via a GitHub Action. If you want to run the script locally, follow the steps below.
git clone https://www.github.com/hasura/docs-community-tracker
cd docs-community-tracker && cp .env.example .env
Grab the generic values from our 1Password vault by searching for docs-community-tracker env
.
Follow these steps with repo
permissions enabled.
Then, use this value to update the GH_TOKEN
value in your .env
file.
We ask that you don't use the "production" spreadsheet for development and testing. Instead, create a copy of the
"production" Google Sheet
and then choose to share it the same users (service-account@docs-community.iam.gserviceaccount.com
with Editor
access) as the original.
You can then determine the spreadsheet's id
by taking everything after .../d/
and before /edit...
in the sheet's
URL.
Use this value in your .env
file instead of the one provided in the vault.
Start watch mode:
npm run dev