Watching NHL Games in Your Terminal? This Tool Brings Hockey to the Command Line

A developer spent his evenings building a hockey tracker for the terminal—because the playoffs were starting and he had Claude Code. Now you can watch live goals, penalties, and power plays scroll by in Courier font while pretending to work. It auto-refreshes every 30 seconds, installs in 10 seconds, and is absolutely ridiculous. No, it won‘t replace your TV. Yes, you should probably install it anyway. Here’s the story of Faceoff, the most unnecessary and delightful thing I‘ve run in my command line all year.

ADVERTISEMENT
Watching NHL Games in Your Terminal? This Tool Brings Hockey to the Command Line

Forget the buffering wheel of doom. One developer built a way to watch hockey in the place where code lives—and it might be the most ridiculous thing you’ll install this week.

I Didn’t Know I Needed This

Let me tell you about a moment I didn’t expect to have.

It’s a Tuesday night. The playoffs are on. My browser has 47 tabs open. The NHL.com stream is buffering for the third time. Somewhere, an auto-playing ad for a truck I will never buy is blasting through my speakers.

And then I saw it. A post on Hacker News. Someone built a hockey tracker for the terminal.

Not a fancy app. Not a sleek website. The terminal. That black box where you type commands and pretend to be a hacker from a 90s movie.

I installed it in 30 seconds. And suddenly, there it was. Goals. Penalties. Shots on goal. Standings. Player stats. All of it, right there, in Courier font.

I laughed. Then I watched three games at once.

This is the story of Faceoff, the most unnecessary and delightful piece of software I’ve installed this year.

What Even Is This Thing?

Faceoff is a terminal user interface—a TUI, if you want to sound fancy—that pulls live data from the NHL’s official API and displays it in your command line.

That’s a nerdy way of saying: you type one command, and suddenly your terminal turns into a hockey dashboard.

You can see tonight’s schedule. You can check live scores. You can watch play-by-play updates scroll by. You can pull up standings, player stats, team rosters, even pre-game goalie matchups.

It auto-refreshes every 30 seconds. You can tweak that if you want. But honestly? Watching the refresh happen feels like waiting for a 1990s dial-up connection to load a photo. And somehow, that’s part of the charm.

The developer, a guy named Vincent Grégoire, built it because he spends “way too much time in the terminal” and the playoffs were starting. Relatable.

He also admitted the app was “mostly vibe-coded with Claude Code.” That means he described what he wanted to an AI, the AI wrote the code, and he fixed the bugs. This is how people build things now. It’s weird. It works. I love it.

How Ridiculously Easy Is It to Install?

You have no excuse not to try this.

If you have uv installed (a fast Python thingy), you type:

text

uvx faceoff

That’s it. The whole thing.

If you don’t have uv, you can get it with pip install uv or just go to the website. But the point is: this is not a “spend 45 minutes configuring dependencies” situation. This is a “I have 47 seconds between meetings” situation.

One person on Hacker News said: “This is IMHO the killer AI feature for personal use. So many utilities I never would have spent time on are now within reach.”

Translation: AI let someone build a weird, niche, wonderful thing that would have been too much work before. And now we all get to enjoy it.

Is It Better Than Watching on TV?

No. Let’s be clear.

You are not canceling your ESPN+ subscription for this. You are not inviting friends over to gather around your laptop while you type uvx faceoff on a 12-inch screen.

The terminal doesn’t show you the puck drop. It doesn’t show you the celly. It doesn’t show you the slow-motion replay of a questionable offside call that everyone will argue about for three days.

What it does is give you a clean, fast, distraction-free way to follow what’s happening across the league.

The official NHL app? Bloated. The website? Covered in ads. The streaming experience? Buffering.

Faceoff is none of those things. It’s just text. Goals, assists, penalties, shots. Refreshed every 30 seconds. No fluff. No nonsense.

It’s like following hockey on a pager. In the best way possible.

How Delayed Is It?

About 30 seconds to a minute behind live TV.

So if you’re watching the game on a screen and running Faceoff in your terminal at the same time, the terminal will spoil the goal before it happens on your stream. Don’t do that. You’ll ruin the game for yourself.

But if you’re at work, pretending to be productive, and you just want to know if your team scored without opening a browser tab that IT can see? Perfect.

One commenter called it “the missing interface from sports.” I think that’s exactly right. Sometimes you don’t want to watch. You just want to know.

Why Did Someone Build This?

Because they could.

That’s the honest answer. Vincent Grégoire likes the terminal. He likes hockey. The playoffs were starting. He had Claude Code. So he spent some evenings building a thing that made him happy.

And then he shared it with the world.

This is the best part of the developer community. Not the billion-dollar startups. Not the AI doomsday predictions. The person who spends a weekend building a hockey tracker for the command line because it seemed fun.

One person on Hacker News asked: “Why not build a generalized tool for all sports?”

Grégoire’s answer was perfect: “Different sports have different ways to present the data. But most importantly, the data availability differs a lot between leagues, so there’s a benefit to having separate tools. I, for one, would not want to maintain an app for all sports.”

Translation: This was a labor of love for hockey. Not a business plan. Not a startup pitch. Just a guy who wanted to watch hockey in his terminal and made it happen.

Who Is This For?

Honestly? Probably you.

If you’re a developer who likes hockey, you’ll install this just for the novelty. You’ll run it once, laugh, and probably never use it again. But you’ll smile.

If you’re a hockey fan who works at a computer all day, you might actually keep it running. Open a tiny terminal window in the corner of your screen. Let it refresh every 30 seconds. Glance at it between emails. It’s oddly soothing.

If you’re neither a developer nor a hockey fan? Then this article probably seems very strange. But you’ve made it this far, so something is keeping you here. Maybe install it anyway. Just to see.

The developer even has a version for MLB baseball called Playball, which came first. So if hockey isn’t your sport, there’s hope for you yet.

The Bottom Line

Faceoff is ridiculous. It’s unnecessary. It will not change your life.

But it might make you smile.

In a world where every app wants your attention, your data, and your credit card number, someone built a hockey tracker for the command line because the playoffs were starting and they thought it would be cool.

That’s the whole story. And it’s a good one.

So go ahead. Open your terminal. Type uvx faceoff. Watch the magic happen.

And when someone walks by your desk and asks why you’re watching hockey in a black box with green text, just tell them: “Because I can.”

One command. No ads. No buffering. Just hockey.