Search code, repositories, users, issues, pull requests...

TranHung

Watch MLB games from the comfort of your own terminal

MLB Gameday and MLB.tv are great, but sometimes you want to keep an eye on a game a bit more discreetly. playball puts the game in a terminal window.

Just want to try it out?

Ready for the big leagues? Install the package globally

Then run it

Don't have Node.js installed? You can run via Docker instead.

key action q quit c go to schedule view s go to standings view key action ↓/j, ↑/k, ←/h, →/l change highlighted game enter view highlighted game p show previous day's schedule/results n show next day's schedule t return to today's schedule key action ↓/j, ↑/k scroll list of all plays

Watch World Baseball Classic games by setting the sport configuration:

Or use an environment variable for one-time viewing:

To switch back to MLB:

When running via Docker:

Playball can be configured using the config subcommand. To list the current configuration values run the subcommand with no additional arguments:

You should see output similar to:

To get the value of a single setting pass the key as an additional argument:

To change a setting pass the key and value as arguments:

To revert a setting to its default value provide the key and the -unset flag:

This table summarizes the available settings:

key description default allowed values color.ball Color of dots representing balls in top row of game view green One of the following: black, red, green, yellow, blue, magenta, cyan, white, grey. Any of those colors may be prefixed by bright- or light- (for example bright-green). The exact color used will depend on your terminal settings. The value default may be used to specify the default text color for your terminal. Finally hex colors (e.g #FFA500) can be specified. If your terminal does not support true color, the closest supported color may be used. color.favorite-star Color of star indiciating favorite team in schedule and standing views yellow See above color.in-play-no-out Color of result where ball was put in play and no out was made (single, double, etc) in list of plays in game view blue See above color.in-play-out Color of result where ball was put in play and an out was made (flyout, fielder's choice, etc) in list of plays in game view white See above color.in-play-runs-bg Background color for score update in list of plays in game view white See above color.in-play-runs-fg Foreground color for score update in list of plays in game view black See above color.on-base Color of diamonds representing runners on base in top row of game view yellow See above color.other-event Color of other events (mound visit, injury delay, etc) in list of plays in game view white See above color.out Color of dots representing outs in top row of game view red See above color.strike Color of dots representing strikes in top row of game view red See above color.strike-out Color of result where play ends on a strike (strike out) in list of plays in game view red See above color.walk Color of result where play ends on a ball (walk, hit by pitch) in list of plays in game view green See above favorites Teams to highlight in schedule and standings views Any one of the following: ATL, AZ, BAL, BOS, CHC, CIN, CLE, COL, CWS, DET, HOU, KC, LAA, LAD, MIA, MIL, MIN, NYM, NYY, OAK, PHI, PIT, SD, SEA, SF, STL, TB, TEX, TOR, WSH. Or a comma-separated list of multiple (e.g. SEA,MIL).Note: in some terminals the list must be quoted: playball config favorites "SEA,MIL" title If enabled, the terminal title will be set to the score of the current game false false, true live-delay Number of seconds to delay the live game stream. Useful when watching with delayed broadcast streams. 0 (no delay) Any positive number sport Which sport/league to display mlb mlb, wbc

Contributions are welcome!