Repository activity dashboard from git history. Zero dependencies, pure Python.
GitPulse scans your git repository and generates a beautiful HTML dashboard with commit frequency, contributor stats, file hotspots, time-of-day patterns, streak tracking, and more.
- Visual dashboard: Dark-themed HTML with contribution calendar, heatmaps, and charts
- Key metrics: Total commits, contributors, avg commits/day, streaks, peak times
- Contributor analysis: Commit counts, line additions/deletions per author
- File hotspots: Most frequently changed files (find your maintenance hotspots)
- Time patterns: Hour-of-day heatmap, day-of-week distribution
- Contribution calendar: GitHub-style activity grid
- Weekly sparkline: Commit frequency over time
- Date filtering: Analyze any time window (
--days 30) - Author filtering: Focus on one contributor (
--author "Alice") - JSON output: Machine-readable output for CI/CD integration
- Zero dependencies: Pure Python 3.8+ stdlib
# Generate dashboard for current repo
python3 gitpulse.py
# Specific repo
python3 gitpulse.py /path/to/repo
# Last 30 days only
python3 gitpulse.py --days 30
# Filter by author
python3 gitpulse.py --author "Alice"
# JSON output for CI/CD
python3 gitpulse.py --json -o stats.json
# Custom output path
python3 gitpulse.py -o my-dashboard.html- Key Metrics: Commits, contributors, avg/day, streak, peak hour/day, lines added/removed
- Weekly Activity: Bar chart showing commit frequency per week
- Activity by Hour: 24-hour heatmap showing when commits happen
- Activity by Day: Monday-Sunday distribution bar chart
- Contribution Calendar: 52-week GitHub-style activity grid
- Top Contributors: Table with commit counts, share %, and line changes
- File Hotspots: Most frequently modified files with visual bars
- Sprint reviews: Show the team what shipped this sprint
- Project health: Track if commit frequency is steady or declining
- Onboarding: Give new team members a quick view of repo activity
- Standups: Pull up the dashboard to see what happened yesterday
- Portfolio: Showcase your contribution activity visually
| Flag | Description |
|---|---|
repo |
Path to git repository (default: .) |
-o, --output |
Output file path |
--json |
JSON output instead of HTML |
--days |
Limit to last N days |
--author |
Filter by author name |
--max-commits |
Max commits to analyze (default: 2000) |
--quiet |
Suppress stats output |
MIT License. See LICENSE for details.
Part of the Orange Digital developer toolkit:
- DevReport — Project status reports
- ChangelogCraft — Professional changelogs
- GitPulse — Activity dashboards