Analyze GitHub repositories for developer metrics with gamification. Generate beautiful dashboards with leaderboards, achievements, and team insights.
$ git-velocity analyze --config config.yaml
Fetching data from GitHub...
Processing 3 repositories...
Generated dashboard at ./dist
$ git-velocity serve --port 8080
Starting preview server at http://localhost:8080
Everything you need to track developer productivity
Track commits, PRs, reviews, and code changes over time
Score points, earn achievements, and compete on leaderboards
Configure teams and see aggregated team metrics
Run analysis automatically in your CI/CD pipeline
Generate a beautiful Vue.js SPA dashboard
File-based caching and concurrent API requests
Get started in seconds
go install github.com/lukaszraczylo/git-velocity/cmd/git-velocity@latest
- uses: lukaszraczylo/git-velocity/.github/actions/git-velocity@main
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
config_file: '.git-velocity.yaml'
Simple CLI commands
# Analyze repositories and generate dashboard
git-velocity analyze --config config.yaml --output ./dist
# Start local preview server
git-velocity serve --directory ./dist --port 8080
# Show version
git-velocity version
-c, --config Path to config file-o, --output Output directory-v, --verbose Verbose output-d, --directory Directory to serve-p, --port Port to listen onname: Git Velocity Analysis
on:
schedule:
- cron: '0 0 * * 1' # Weekly on Monday
workflow_dispatch:
jobs:
analyze:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Git Velocity Analysis
uses: lukaszraczylo/git-velocity/.github/actions/git-velocity@main
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
config_file: '.git-velocity.yaml'
output_dir: './dist'
deploy_gh_pages: 'true'
upload_artifact: 'true'
Comprehensive developer activity metrics
Total commits, lines added/deleted, files changed
PRs opened, merged, closed, average size
Reviews given, comments, approvals, response time
Issues opened, closed, comments
Customize everything via YAML
version: "1.0"
auth:
github_token: "${GITHUB_TOKEN}"
repositories:
- owner: "your-org"
name: "your-repo"
teams:
- name: "Backend Team"
members: ["dev1", "dev2"]
color: "#3B82F6"
scoring:
enabled: true
points:
commit: 10
pr_opened: 25
pr_merged: 50
pr_reviewed: 30
output:
directory: "./dist"
deploy:
gh_pages: true