{"id":30090456,"url":"https://github.com/seeyebe/gmap","last_synced_at":"2025-09-09T04:12:19.034Z","repository":{"id":307216892,"uuid":"1028739839","full_name":"seeyebe/gmap","owner":"seeyebe","description":"Command-line tool for visualizing Git activity","archived":false,"fork":false,"pushed_at":"2025-08-04T22:11:50.000Z","size":448,"stargazers_count":159,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-09T06:07:52.574Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seeyebe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-30T02:00:38.000Z","updated_at":"2025-08-09T06:07:10.000Z","dependencies_parsed_at":"2025-07-30T04:36:28.433Z","dependency_job_id":"4f3c9b0f-a754-44ca-a7da-977c68e93e74","html_url":"https://github.com/seeyebe/gmap","commit_stats":null,"previous_names":["seeyebe/gmap"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/seeyebe/gmap","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seeyebe%2Fgmap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seeyebe%2Fgmap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seeyebe%2Fgmap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seeyebe%2Fgmap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seeyebe","download_url":"https://codeload.github.com/seeyebe/gmap/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seeyebe%2Fgmap/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274243039,"owners_count":25248148,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-09T06:02:18.735Z","updated_at":"2025-09-09T04:12:19.026Z","avatar_url":"https://github.com/seeyebe.png","language":"Rust","funding_links":[],"categories":["Rust","\u003ca name=\"git\"\u003e\u003c/a\u003eGit and accessories"],"sub_categories":[],"readme":"# gmap\n\n\u003e A fast command-line tool to explore Git activity — heatmaps, churn, authorship, and more.\n\n[![Crates.io](https://img.shields.io/crates/v/gmap.svg)](https://crates.io/crates/gmap)\n[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n\n`gmap` helps you **understand your Git repository** at a glance — not just what changed, but *when, how much, and by whom*. Visualize commit activity over time, spot churn-heavy files, explore contributor dynamics, and more — all from your terminal.\n\nBuilt for developers who live in the CLI and want quick, powerful insights.\n\n---\n\n## Features\n\n- **Heatmap View**: Weekly commit activity with line additions, deletions, and churn\n- **Churn Analysis**: File-level change volume over time\n- **Timeline Sparklines**: See growth and change at a glance\n- **Export Mode**: Output structured JSON for further analysis\n- **Interactive TUI**: Terminal UI with search, filtering, and keyboard navigation\n\n---\n\n## Installation\n\nInstall via [crates.io](https://crates.io/crates/gmap):\n\n```sh\ncargo install gmap\n````\n\n---\n\n## Getting Started\n\nRun the interactive TUI on any Git repository:\n\n```sh\ngmap heat --tui\n```\n\nUse `Tab` or arrow keys to switch views. Press `h` for help.\n\n---\n\n## Example (TUI)\n\n![TUI Heatmap](assets/tui-heatmap-preview.png)\n\n---\n\n## Why gmap?\n\nWhen you’re dropped into a new codebase, or even trying to clean up your own, questions like these matter:\n\n* Which files change the most?\n* Who made most of the changes last month?\n* Are there dormant areas of the code?\n* What’s the trend of contributions over time?\n* Where is most of the churn?\n\nTraditional `git log` and `git blame` don’t answer these efficiently. `gmap` does.\n\n---\n\n## TUI Controls\n\n| Key   | Action                 |\n| ----- | ---------------------- |\n| `← →` | Switch views           |\n| `Tab` | Cycle through sections |\n| `/`   | Search                 |\n| `Esc` | Exit search            |\n| `h`   | Toggle help overlay    |\n| `q`   | Quit                   |\n\n---\n\n## Commands\n\n```sh\ngmap [OPTIONS] \u003cCOMMAND\u003e\n```\n\n| Command  | Description                          |\n| -------- | ------------------------------------ |\n| `heat`   | Weekly commit heatmap (default view) |\n| `churn`  | File-level change volume             |\n| `export` | Export full stats as JSON            |\n| `help`   | Show help message                    |\n\n---\n\n## Options\n\n| Flag               | Purpose                             |\n| ------------------ | ----------------------------------- |\n| `--repo \u003cpath\u003e`    | Git repo location (defaults to `.`) |\n| `--cache \u003cdb\u003e`     | Use or persist a cache DB           |\n| `--since \u003cdate\u003e`   | Analyze starting from date          |\n| `--until \u003cdate\u003e`   | Up to this date                     |\n| `--include-merges` | Include merge commits               |\n| `--binary`         | Include binary files                |\n| `--tui`            | Launch terminal UI                  |\n| `-h, --help`       | Show help                           |\n| `-V, --version`    | Show version info                   |\n\nDate values support:\n\n`--since` and `--until` accept any of:\n\n* Exact date in `YYYY-MM-DD` (e.g. `2024-01-01`)\n* RFC3339 datetime (e.g. `2024-01-01T00:00:00Z`)\n* Relative time: \n  - `X days ago`\n  - `X weeks ago`\n  - `X months ago`\n* Git revisions (e.g. `HEAD~10`, `abcdef1`, `main`, or any valid commit, branch, or tag)\n\n\u003e Note: `1 year ago`, `yesterday`, `last month`, and natural language like `today` or `now` are **not supported**.\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseeyebe%2Fgmap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseeyebe%2Fgmap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseeyebe%2Fgmap/lists"}