Show HN: Faceoff – A terminal UI for following NHL games (vincentgregoire.com)

136 points by vcf ↗ HN
Faceoff is a TUI app written in Python to follow live NHL games and browse standings and stats. I got the inspiration from Playball, a similar TUI app for MLB games that was featured on HN.

The app was mostly vibe-coded with Claude Code, but not one-shot. I added features and fixed bugs by using it, as I spent way too much time in the terminal over the last few months.

Try it out with `uvx faceoff` (requires uv).

30 comments

[ 2.7 ms ] story [ 60.8 ms ] thread
Nice, I've now created dozens of little personal tools like this now :-)

This is IMHO the killer AI feature for personal use. So many utlities I never would have spent time on are now within reach. Even just non-trivial bashrc aliases and functions

The missing interface from sports.
Nice! In practice, how far behind the TV broadcast does it end up being?
> Acknowledgments - This project was inspired by Playball, a similar terminal application for following MLB baseball games.

Should've gone for something generalized that could handle a bunch of different games, instead of just another sport, so someone caring about multiple sports don't need multiple TUIs :)

What next? Perhaps a small scripting language to run on the side of the terminal?

You know, just to make some simple automations possible, nothing super-special.

Nice! I was thinking about doing something like this but for cycling, however one of the biggest PIA about building products for sports is all the gating of data.

Does the NHL really provide an API for all games? That's nice...

It's like the reinvention of Teletext
Which still exists in many European countries.
I think a teletext-like central information service for terminals would see use, because sometimes you just want to check the weather and news without being spammed with a billion ads and JavaScript
This is great. I recently asked AI how many software devs played hockey. It estimated 25k - 50k globally. It also called it a 'prestige sport' which never occurred to me (what with all the guys with missing teeth). But the cost of playing is getting significant. Still the most fun sport to play and watch.

Thanks for this - TUI is awesome.

Not a hockey fan but i absolutely love this
I love this - watching the hurricanes game right now! Autorefresh would be nice and then it looks like a small bug in the faceoff percentage as they both say 100% which shouldn't be possible at any point in the game. Also would be sick to be able to enter the team and roster detail page from within the game detail page. But I love this so much and appreciate you for building it :D

edit the face off percentage is still a little off it's updated to show this 87% - 67%. Also followed you on twitter and github.

It looks interesting, but you can create this with any database, like mysql and create relations between tables, right?
curious how you handle the NHL feed latency. the undocumented API can be anywhere from 30s to 2 minutes behind the ice. do you poll on a fixed interval or do something smarter to keep it snappy