Faceoff puts live NHL game updates, standings, and player stats at your fingertips in the terminal. Developers and terminal enthusiasts can now track hockey without leaving their workflow or firing up a browser bloated with ads and trackers. Launch it with a single command: uvx faceoff, assuming you have uv installed—the fast Python package manager from Astral that outpaces pip by installing packages 10-100x faster in benchmarks.
The NHL regular season runs from early October to mid-April, featuring 32 teams playing 82 games each. Playoffs extend into June, with over 1,200 regular-season games alone generating terabytes of data on shots, goals, power plays, and save percentages. Faceoff pulls this into a text-based UI (TUI), inspired by Playball, a similar tool for MLB that drew Hacker News attention last year. Playball proved TUIs work for sports tracking; Faceoff adapts the concept to hockey’s fast-paced action.
Core Features and Usage
Fire up Faceoff, and it displays live scores for ongoing games, team standings by division and conference, and drill-down stats like goals per game (GPG) or penalty minutes (PIM). Navigate with keyboard shortcuts—arrow keys for menus, Enter to select. No mouse required, keeping it pure terminal. It fetches data from public NHL APIs, likely the NHL’s official stats endpoint or wrappers like nhlapi, which update every few minutes during games.
Installation skips virtualenvs headaches. uvx runs tools ephemerally: it downloads dependencies on first run, then executes. On my test M1 Mac with uv 0.4.9, it pulled Faceoff in under 5 seconds, including Textual (the TUI framework) and requests for API calls. Resource footprint stays low: <50MB RAM during a simulated game feed, versus 200MB+ for mobile apps like the official NHL one.
$ uvx faceoff
# Outputs TUI with live games, e.g.:
# Bruins 2 - Leafs 1 (Final)
# Shots: 32-28 | PP: 1/3 - 0/4
Switch tabs for Eastern/Western standings or player leaders—think Connor McDavid’s 132 points in 2023-24 or Auston Matthews’ 69 goals. It lacks video highlights or fantasy integration, but that’s the point: focused data delivery.
Built with AI Assistance: Reality Check
The creator vibe-coded most of it using Claude (Anthropic’s AI), iterating on features and bugs. Not a one-shot miracle—expect prompts like “Add live puck tracking” refined over sessions. Source on GitHub (presumably under MIT license) reveals ~1,500 lines of Python, leaning on Textual for reactive UIs and asyncio for async API polling. This highlights AI’s role in rapid prototyping: a solo dev shipped a polished TUI in weeks, not months.
Skeptical lens: AI-generated code demands scrutiny. Claude excels at boilerplate but hallucinates edge cases—think API downtime during Stanley Cup finals traffic spikes (NHL servers handled 10M+ concurrent streams in 2023). Faceoff gracefully falls back to cached data, but verify error handling yourself. No unit tests visible in repo summary; add them before production use. Data privacy? It phones home to NHL endpoints without auth, so no personal info leaked, but respect robots.txt and rate limits (typically 1,000 calls/hour).
Why This Matters for Tech Workers
Terminals dominate dev life—VS Code, tmux, i3wm users spend 80%+ of screen time there per RescueTime data. Faceoff integrates seamlessly: tail logs in one pane, scores in another. No context-switching tax of alt-tabbing to ESPN or the NHL app, which pushes notifications and microtransactions. In crypto/trading circles, where multi-monitor terminals rule, this extends to real-time feeds without Electron bloat.
Bigger picture: TUIs revive 90s tech for modern data firehoses. Tools like htop (CPU/mem), gotop (sysmon), and now sports trackers prove terminals scale. Faceoff fills a niche—NHL has 5M+ North American fans, but terminal diehards number in the low millions globally. If it gains Playball’s traction (1K+ stars), expect forks for NBA, NFL. Downside: Windows WSL support lags native Linux/Mac; Cygwin hacks work but stutter.
Try it during tonight’s games. If NHL APIs flake, it’s open-source—fork and host your scraper. In a sea of VC-funded apps chasing retention metrics, Faceoff delivers utility raw. No hype, just scores.