Tiny static site that publishes precomputed contribution dashboards for selected GitHub users.
users.txtlists GitHub logins to mine.- A daily GitHub Action (
.github/workflows/mine-and-deploy.yml) runsgenerate_stats.py --user <login>for each entry and copies the resulting HTML intocloudflare/public/<login>.html. pirate's enhanced dashboard is not auto-generated — the Action copiesstats.html(which pirate maintains by running the script locally and committing the result) tocloudflare/public/pirate.html.wrangler deployships./public/as Cloudflare Workers static assets atgithubusers.archivebox.io.
No R2, no Worker code, no committed-back HTML in gh-pages. Single wrangler deploy from CI replaces the previous deployment atomically.
/<login>→public/<login>.html(viahtml_handling = "auto-trailing-slash")/→public/index.html(landing page with list of mined users)- any other path →
public/404.html
| Secret | Purpose |
|---|---|
GH_MINING_TOKEN |
a GitHub PAT (or fine-grained token) used by the Action to call the GitHub REST API at higher rate limits |
CLOUDFLARE_API_TOKEN |
Cloudflare token with Workers Scripts:Edit permission |
CLOUDFLARE_ACCOUNT_ID |
your Cloudflare account ID |
Open a PR adding their login to users.txt. The Action runs on push to main and re-deploys.
Pirate runs python3 generate_stats.py locally (uses his rich personalized config + local git mining), then commits the resulting stats.html. The next Action run picks it up.
- In Cloudflare dashboard: add a custom domain
githubusers.archivebox.io→ CNAME to the Worker. - In the GitHub repo settings: add the three secrets above.
- Push to
main(or clickRun workflowin the Actions tab).