Skip to content

v0.33.0 — gh-pulse

Choose a tag to compare

@ralyodio ralyodio released this 13 Sep 04:38
9def7e7

gh-pulse: what moved on GitHub since yesterday, ranked, with traffic, on every surface.

Every repo the gh token can see (your account plus every org you belong to, forks excluded) is checked for movement since the previous run: stars, forks, commits, pull requests, issues, releases, and the traffic GitHub shows at /graphs/traffic (views, unique visitors, clones, referrers, popular content). Movers are ranked by a weighted score and the report reaches you four ways:

  • Email, HTML with inline charts through Resend: a portfolio chart, the ranking with score bars, and for the top repos a 14-day views and clones chart, referrers, popular content, new stargazers, merged PRs and releases. New and lost followers are named.
  • Terminal: gh-pulse show, an hqtui dashboard. Click a row or move with the keys; the selected repo's traffic histograms and detail sit on the right, and a History tab charts stars, followers, views and clones across every snapshot. In the moshcode pit it is /pulse.
  • Browser: gh-pulse open.
  • Pipes: gh-pulse text and gh-pulse json.

GitHub publishes traffic in UTC-day buckets one to two days late, so the window is not a clock: each run counts the growth of the 14-day buckets since the previous snapshot, which makes it exactly "since the last email" and means a skipped day widens the window instead of losing data. Every run writes a gzipped snapshot under ~/.local/share/gh-pulse. GitHub keeps nothing past 14 days, so those files are the only long-run traffic history you will have.

A daily cron entry is in the README. Mail needs RESEND_API_KEY (read from ~/.config/logicsrc/shell.env when unset) and a sender on a verified Resend domain.