Band goal: turn raw traffic charts into insights, and let evaluators try the UI with near-zero friction.
Parent: ROADMAP.md Β· Contracts: SPEC.md
| ID | Item | Notes |
|---|---|---|
| A1 | Trends / velocity on repo page | Reuse internal/h2h (Momentum7d / Momentum30d); show on repository detail UI with short copy. |
| QW | Backup CLI | e.g. gghstats backup / restore via SQLite VACUUM INTO (or documented equivalent). |
| QW | Demo mode | Sample/fake dataset; no GitHub token required to browse UI. |
| QW | README comparison table | vs niche peers (self-hosted, history beyond 14d, single binary, Cosign/SBOM). |
| QW | Selected quick wins | Prefer: security headers baseline, SRI for Chart.js/Luxon, SQL index (repo, date) if missing, access-log status codes. Optional: :develop GHCR tag, document internal/collector. |
- Line B (webhooks / GraphQL / delta sync).
- Line D (API-only / dogfood JSON) β 0.11.x.
- Line A2 heavy multi-channel alerts (belongs in 0.10.x).
- Default DB path freeze (1.0).
- Postgres, in-tree SPA, GitHub App.
Ship at least:
- Trends visible on the repo page (A1), and
- Either backup/restore CLI or demo mode (both preferred), and
- README comparison table.
All changes: tests + CHANGELOG + make lint / make test green on develop.
- Trends + backup
- Demo mode
- README comparison only
Do not start Line B until one track has landed.
- A1 trends on repo page
- Backup and/or restore subcommand
- Demo mode
- README comparison table
- Quick wins batch (headers / SRI / log status / collector README;
(repo, date)already covered by SQLite PRIMARY KEY) - CHANGELOG
[Unreleased]folded into 0.9.0 - SPEC updated for demo, distroless default DB, security headers, backup/restore
- Shipped as v0.9.0 (2026-07-12)