A fast Rust CLI that analyzes any git repository and generates stunning visual reports —
contribution heatmaps, code ownership, risk analysis, collaboration graphs, and more.
No server. No signup. No cost.
Installation · Usage · Dashboard · Risk Scoring
cargo install gitvizOr build from source:
git clone https://github.com/aymenhmaidiwastaken/gitviz.git
cd gitviz
cargo install --path .gitviz summary # colorful terminal summary
gitviz report --open # interactive HTML dashboard
gitviz report --open --since 2024-01-01 # filter by date range
gitviz report https://github.com/user/repo --open # analyze remote repos
gitviz export -o data.json # export raw data as JSONA single self-contained HTML file with interactive charts powered by Chart.js and D3.js. No external dependencies — just open it in any browser.
12 interactive sections — all in one file:
| Section | What it shows |
|---|---|
| Contribution Heatmap | GitHub-style calendar of commit activity |
| Activity Timeline | Commits and lines changed over time |
| Code Ownership Treemap | D3.js treemap colored by primary author |
| Risk Analysis | Files scored by churn × authors × recency × size |
| Hotspot Scatter Plot | File change frequency vs contributor count |
| Language Breakdown | Donut chart with rollup for minor languages |
| Commit Patterns | Hour-of-day and day-of-week distribution |
| Collaboration Graph | Force-directed graph of shared file ownership |
| Word Cloud | Most common commit message words |
| Conventional Commits | feat / fix / refactor / chore breakdown |
| Branch Analysis | Active vs merged, commit counts, last activity |
| Author Search | Real-time filtering across the contributor table |
Each file gets a composite risk score (0–100%) based on four weighted factors:
| Factor | Weight | What it measures |
|---|---|---|
| Churn | 35% | How often the file changes |
| Author sprawl | 25% | How many different people touch it |
| Size | 20% | Total lines added + removed |
| Recency | 20% | How recently it was modified |
Files above 70% →
critical· above 50% →high
These are your top candidates for refactoring, tests, or review attention.
GitViz automatically excludes noise so your analysis reflects actual code churn:
- Dependency dirs —
node_modules/,vendor/,dist/,target/ - Lock files —
package-lock.json,yarn.lock,Cargo.lock,go.sum - Binaries — images, fonts, archives, executables
- Minified —
*.min.js,*.min.css
| GitViz | GitPrime / LinearB | GitHub Insights | |
|---|---|---|---|
| Price | Free | $20+/dev/month | Free (limited) |
| Self-hosted | Yes | No | No |
| Risk scoring | Yes | Yes | No |
| Code ownership | Yes | Yes | CODEOWNERS only |
| Single-file report | Yes | No | No |
| Works offline | Yes | No | No |
| Remote repos | Yes | Yes | N/A |
| Collaboration graph | Yes | No | No |
- Parallel analysis with rayon
- Per-file line-level diff stats
- Smart filtering eliminates noise before analysis
- Progress bar with ETA for large repos
cargo build # build
cargo test # run tests
cargo fmt # format
cargo clippy # lint
cargo install --path . # install locally

