v0.11.0

GitHub stats
beyond 14 days.

Self-hosted traffic dashboard for your repos — see stars, forks, views, and clones over 30, 60, 90 days. One binary. SQLite. No SaaS.

$ curl -fsSL https://get.gghstats.com/install.sh | sh
$ export GGHSTATS_GITHUB_TOKEN=ghp_xxx
$ gghstats run --open
curl -fsSL https://get.gghstats.com/install.sh | sh

// Overview

Infographic: gghstats permanent GitHub traffic analytics versus GitHub’s 14-day limit — self-hosted SQLite, head-to-head scoring, and Docker, Helm, and Homebrew deployment.

Recent releases

v0.11.02026-07-23

API
  • API-only mode (GGHSTATS_API_ONLY) skips HTML dashboard and SEO routes
  • Dogfood JSON routes for external UIs (/api/v1/repos, h2h, charts) plus CORS and CSP Report-Only
  • SYNC+: date-scoped referrer/path delta updates after each sync

v0.10.22026-07-22

Security
  • Trusted proxies gate X-Forwarded-For / X-Real-IP for rate limit and IP whitelist
  • HTTP server timeouts (ReadHeader/Read/Write/Idle) on serve
  • golang.org/x/net pin v0.57.0; release coverage bar ≥ 80%

v0.10.12026-07-18

Alerts
  • Star growth milestones fire once per threshold after sync
  • SMTP alert sink (STARTTLS / optional TLS) plus alert test --sink smtp

Full changelog on GitHub

// 01 · Self-hosted

Go binary + SQLite. Runs on your bastion, your laptop, a Raspberry Pi. No accounts, no rate limits, no third-party dashboards.

// 02 · Past 14 days

GitHub's web UI caps at 14 days. gghstats snapshots traffic and renders 30+ day trends per repo and aggregated.

// 03 · One GitHub token

Set GGHSTATS_GITHUB_TOKEN (fine-grained PAT). While the dashboard runs, gghstats syncs traffic from the GitHub API in the background.

// Quick start

Optional: generate config from the CLI instead of hand-editing env vars.

$ gghstats --print-sample-config > ./gghstats.env  # adjust
$ export GGHSTATS_GITHUB_TOKEN=ghp_xxx
$ gghstats run --open

`run` is an alias for `serve`; `--open` opens the browser when the dashboard is ready. Background sync starts automatically.

Production (VPS, TLS, Compose, Traefik, Helm):gghstats-selfhosted

// Repositories