| Crates.io | gmap |
| lib.rs | gmap |
| version | 0.4.0 |
| created_at | 2025-07-30 02:05:00.520615+00 |
| updated_at | 2025-11-02 23:08:38.698941+00 |
| description | Git repository analysis tool for churn and heatmap visualization |
| homepage | |
| repository | https://github.com/seeyebe/gmap |
| max_upload_size | |
| id | 1773013 |
| size | 566,789 |
Git activity maps you can use: heatmaps, churn, exports, and a no‑nonsense TUI.
No dashboards. No hype. Just answers to: what changed, when, and by whom.
cargo install gmap
Requires a Git repo. Data is read locally; nothing leaves your machine.
TUI heatmap for the current repo
gmap heat --tui
JSON heatmap, monthly buckets, filter by author
gmap --repo /path/to/repo heat --json --monthly --author "alice"
Top churn (aggregate file changes)
gmap churn --json --since 3 months ago
Full export (per‑commit, per‑file), newline‑delimited
gmap export --ndjson
Global
--repo <path>: analyze this repo (default: .)--cache <dir>: where to place/read the .db cache--since/--until <date>: time bounds (supports YYYY-MM-DD, RFC3339, X days/weeks/months ago, yesterday, today, now, last week, last month, or any Git ref)--include-merges: count merge commits (off by default)--author <text> / --author-email <text>: substring match, case‑insensitiveHeat
--json / --ndjson--monthly: group by month instead of weekChurn
--json / --ndjson--depth <n>: aggregate by directory depthExport
--json / --ndjsonTab / Shift+Tab: switch views←/→ or j/k: move selection/: search weeks/authors (filter)Enter: open commit list for selected periodc: copy commit hashh or F1: help; q: quitTip: The Files view shows file‑type breakdowns for the selected period and overall, so you can spot what kinds of files are being touched.
What it’s not: a general Git UI, blame replacement, or a web app.
.gmap/ to avoid recomputing diffs--binaryBug reports, ideas, and small PRs welcome. Keep changes focused. If you add a feature, add a flag and a short example to this README.
MIT. See LICENSE.