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...
stackskipton 16 hours ago [-]
Officially no, but there is undocumented API (if you are commercial, they provide documentation and support) that is public without authentication.
redanddead 6 hours ago [-]
the more I think about it, the more it's actually so weird that the leagues don't have APIs
Shalomboy 1 hours ago [-]
The request definitely comes from the leagues' broadcast partners, right? They would want as many eyeballs concentrated in as few places as possible so they can sell ads for more.
vcf 18 hours ago [-]
I had the same thought, went ahead when I found an existing Python module to access the API.
mooktakim 14 hours ago [-]
It's like the reinvention of Teletext
LeoPanthera 7 hours ago [-]
Which still exists in many European countries.
mallahan 12 hours ago [-]
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.
11 hours ago [-]
11 hours ago [-]
freedomben 20 hours ago [-]
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
vcf 20 hours ago [-]
Yeah, I completely agree. It's awesome to be able to build anything you want (as long as it's not too complex). I, too, have at least a dozen, and I usually don't share, but with the playoffs starting, I felt others could enjoy this one.
zawakin 19 hours ago [-]
Same — similar pile accumulating, and GitHub has fallen way behind. I keep going back and forth on whether a monorepo is the right answer or if it'd just make the sprawl more legible without actually helping. How are you organizing yours?
vcf 15 hours ago [-]
One repo per project. It makes it easier when I want to share or make public. I have 100+ repos in my account and I don’t find that cumbersome.
nullsanity 17 hours ago [-]
[dead]
embedding-shape 19 hours ago [-]
> It's awesome to be able to build anything you want (as long as it's not too complex).
That's the thing. It was always awesome, as long as it wasn't too complex. The only thing that changed for me what was "too complex".
Not player stats, only team stats. I'll have to see if player-level stats are available in the API.
worldsavior 8 hours ago [-]
NHL? What are we, Canadians?
embedding-shape 19 hours ago [-]
> 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 :)
prh8 15 hours ago [-]
Having long ago built an app that does gamecasts for multiple sports, similar to what you get from ESPN, every sport is completely different. There's almost nothing that matches up, except for the very basic concept of a box score. Even play by play has enough differences to be vastly different
embedding-shape 15 hours ago [-]
I never once built an app for gamecasts, any sport, but even I do realize that sports are different... Not sure what made you(s) believe I'm suggesting the exact same UI for all the sports.
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.
rangersny1 19 hours ago [-]
Nice! In practice, how far behind the TV broadcast does it end up being?
vcf 19 hours ago [-]
Not too much, but it’s using a Rest API, so it also depends on the refresh rate (default 30 seconds, configurable with cli argument).
brewdad 17 hours ago [-]
That’s not bad. One of my favorite times is college football season with a big game on say, ABC. You quickly learn who it watching OTA, who is watching on cable and who has YoutubeTV based on the different reaction times after a big play.
james-clef 19 hours ago [-]
Wicked. Who is your team?
vcf 19 hours ago [-]
Go Habs Go!
bradley_taunt 16 hours ago [-]
Booooo!
(From a Senators fan…)
dionian 12 hours ago [-]
Not a hockey fan but i absolutely love this
cyberax 19 hours ago [-]
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.
_doctor_love 18 hours ago [-]
settle down
itsnh98 19 hours ago [-]
Go Habs!
j45 19 hours ago [-]
The missing interface from sports.
jiexiang 7 hours ago [-]
[dead]
zephyrwhimsy 13 hours ago [-]
[dead]
zephyrwhimsy 13 hours ago [-]
[dead]
vrr044 7 hours ago [-]
[dead]
pukaworks 12 hours ago [-]
[dead]
Rendered at 14:12:27 GMT+0000 (Coordinated Universal Time) with Vercel.
Playball – Watch MLB games from a terminal - https://news.ycombinator.com/item?id=45451577 - Oct 2025 (146 comments)
Playball: Watch MLB games from the comfort of your own terminal - https://news.ycombinator.com/item?id=37591070 - Sept 2023 (1 comment)
Playball: Watch MLB games from the comfort of your own terminal - https://news.ycombinator.com/item?id=21653981 - Nov 2019 (42 comments)
Does the NHL really provide an API for all games? That's nice...
Thanks for this - TUI is awesome.
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
That's the thing. It was always awesome, as long as it wasn't too complex. The only thing that changed for me what was "too complex".
https://api-web.nhle.com/v1
Keeping upto date endpoints for sport scores is the most difficult challenge.
This reminds me of that f1 tui… https://github.com/JustAman62/undercut-f1 or https://github.com/IAmTomShaw/f1-race-replay. The one I’m thinking of syncs with kodi for delayed playback “live” stats.
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 :)
(From a Senators fan…)
You know, just to make some simple automations possible, nothing super-special.