Live sports scores, standings, schedules, and news in your terminal — as a GitHub CLI extension.
gh extension install maxbeizer/gh-sportsballgh sportsball # Launch TUI (full-screen app)
gh sportsball scores # Today's scores (text output)
gh sportsball scores --sport nhl # Filter by sport
gh sportsball scores --date 2026-03-01 # Historical scores
gh sportsball watch --team NSH # Watch a game live
gh sportsball watch --team NSH --wait # Wait for game, then watch
gh sportsball standings --sport nhl # Standings
gh sportsball schedule --team NSH # Team schedule
gh sportsball news # Headlines
gh sportsball news --sport nba # Sport-specific news
gh sportsball teams --sport nhl # List team abbreviations
gh sportsball follow --search predators # Search for teams
gh sportsball follow NSH --sport nhl # Add to favorites
gh sportsball follow --remove NSH # Remove from favorites| Key | Action |
|---|---|
tab / shift+tab |
Switch tabs forward/backward |
↑/k ↓/j |
Navigate |
ctrl+d / ctrl+u |
Half-page scroll |
enter |
Select / watch game |
f |
Toggle favorites-only |
d / D |
Yesterday / today (scores) |
←/h →/l |
Change sport (standings/news) |
o / enter |
Open article in browser (news) |
? |
Help overlay |
q |
Quit |
| Sport | Key | Emoji |
|---|---|---|
| NHL | nhl |
🏒 |
| NFL | nfl |
🏈 |
| NBA | nba |
🏀 |
| MLB | mlb |
⚾ |
| MLS | mls |
⚽ |
| EPL | epl |
⚽ |
| NCAAF | cfb |
🏈 |
| NCAAB | cbb |
🏀 |
Config lives at ~/.config/gh-sportsball/config.yaml:
favorites:
- team: NSH
sport: nhl
- team: ARS
sport: epl
refresh-interval: 30s
date-format: us # "us" (3/8), "iso" (2026-03-08), or "long" (March 8, 2026)Controls how dates are displayed across the app:
| Value | Date | Date + Time |
|---|---|---|
us (default) |
3/8 |
3/8 3:04 PM |
iso |
2026-03-08 |
2026-03-08 15:04 |
long |
March 8, 2026 |
March 8 3:04 PM |
All data comes from ESPN's public API — no API key required.
make help # see all targets
make build # build binary
make test # run tests
make ci # build + vet + test-race
make install-local # install extension from checkout
make relink-local # reinstall after changesTag a version to trigger a release build:
git tag v0.1.0
git push origin v0.1.0The GitHub Actions workflow uses goreleaser to build binaries for darwin/linux/windows (amd64/arm64) and create a GitHub release.