Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Big Board

A cyberpunk-themed TUI for assessing contributor volumes across git repositories. Inspired by Hiro Protagonist's Big Board from Neal Stephenson's Snow Crash.

Install

Big Board requires the git command-line client on PATH.

From Source

go install github.com/richhaase/bigboard/cmd/bigboard@latest

Usage

# Analyze current directory
bigboard

# Analyze specific repos
bigboard ~/src/repo1 ~/src/repo2

# Scan a directory for repos (one level deep)
bigboard ~/src/

# Set initial sort column
bigboard --sort commits ~/src/

# Exclude repos (exact name or glob, repeatable)
bigboard --exclude vendor-lib --exclude 'experiment-*' ~/src/

# Scan deeper than one level (e.g. ~/src/org/repo)
bigboard --depth 2 ~/src/

# Export the current view without the TUI
bigboard --export json --since 90d ~/src/ > board.json
bigboard --export md --since 1y ~/src/   # also csv

# Use a named group from your config
bigboard --group backend

# Force a color theme (default: auto-detect from terminal)
bigboard --theme dark ~/src/

# Enable fuzzy author-name merging (off by default)
bigboard --fuzzy ~/src/

# Count generated/vendored files too (off by default)
bigboard --all-files ~/src/

The time range is chosen interactively (←/→) and defaults to 14 days. Use --since to choose the initial range.

Accuracy notes

  • Author identity is resolved by git's native .mailmap (honored automatically for %aN/%aE), then grouped by email and exact name. Substring name merging (which can collapse distinct people like Daniel / Daniela) is off by default — enable it with --fuzzy. Add a .mailmap to a repo to canonicalize names/emails precisely.
  • Generated & vendored files (lockfiles, vendor/, node_modules/, dist/, *.min.*, *.snap, go.sum, …) are excluded from line counts by default so they don't inflate scores. Pass --all-files to count everything.
  • Scope is each repo's default branch, --no-merges. Squash-merge workflows credit the merger; rename/copy churn is normalized via -M -C.

Controls

Key Action
↑/↓ j/k Navigate rows
←/→ h/l Cycle time range (1d / 7d / 14d / 30d / 90d / 1y / all)
Enter Drill into selected contributor
Esc Back / Quit
s Cycle sort column (commits / added / removed / net / ai / total)
S Reverse sort direction
/ Filter contributors by name (incremental)
r Open repo inclusion/exclusion overlay
space Toggle a repo in/out (within the repo overlay)
R Refresh (re-scan all repos)
q Quit (clears an active filter first)

In the contributor detail view, ↑/↓ step to the previous/next contributor.

Config file

Optional, at ~/.config/bigboard/config.json (override with --config). Flags win over config.

{
  "paths": ["~/src"],
  "exclude": ["vendor-*", "*-archive"],
  "sort": "net",
  "since": "90d",
  "theme": "dark",
  "depth": 2,
  "groups": {
    "backend": ["~/src/api", "~/src/workers"],
    "frontend": ["~/src/web"]
  }
}

Select a group with --group backend. Author identities can also be canonicalized with a standard git .mailmap in each repo.

Features

  • ASCII art banner with vertical color gradient
  • Streaming repository-scan loader that surfaces unreadable repos as they load
  • Gradient impact bars with trailing glow; gold/silver/bronze rank styling
  • AI-authorship as a first-class metric: leaderboard AI% column, per-month AI share, per-repo AI %
  • Per-contributor drill-down: repo breakdown, monthly timeline, neon contribution heatmap, and derived metrics (active days, first/last commit, churn)
  • Scrollable, height-aware leaderboard with incremental / search — every contributor reachable
  • Headless --export json|csv|md, config file with named --groups, glob --exclude, and recursive --depth
  • Accurate-by-default: native .mailmap, generated/vendored files excluded, deterministic ordering, rename/copy-aware churn
  • Git worktree detection (automatically skipped during repo discovery)

License

MIT

About

Cyberpunk-themed TUI for assessing contributor volumes across git repositories. Inspired by Snow Crash.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages