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?
$ npx playball
Ready for the big leagues? Install the package globally
$ npm install -g playball
Then run it
$ playball
$ docker build -t playball .
$ docker run -it --rm --name playball playball:latest
Update the language encoding of by adding --build-args
$ docker build --build-arg LANG=en_US.UTF-8 -t playball .
| 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 |
Playball can be configured using the config subcommand. To list the current configuration values run the subcommand with no additional arguments:
playball configYou should see output similar to:
color.ball = green
color.favorite-star = yellow
color.in-play-no-out = blue
color.in-play-out = white
color.in-play-runs-bg = white
color.in-play-runs-fg = black
color.on-base = yellow
color.other-event = white
color.out = red
color.strike = red
color.strike-out = red
color.walk = green
favorites =
To get the value of a single setting pass the key as an additional argument:
playball config color.strikeTo change a setting pass the key and value as arguments:
playball config color.strike blueTo revert a setting to its default value provide the key and the --unset flag:
playball config color.strike --unsetThis 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 |
git clone https://github.com/paaatrick/playball.git
cd playball
npm install
npm start
Contributions are welcome!