About

Watch baseball live in a 3D toy ballpark

Pocket Ballpark takes a real baseball game, either one that's being played right now or one from earlier this season, and plays it out pitch by pitch with little aliens and robots in a 3D park.

A close view of the ballpark: an alien pitcher in Cubs blue on the mound, his alien catcher behind the plate with the mitt up, and a robot hitter in White Sox grey waiting on the pitch.
The home team plays as aliens and the visiting team as robots, in their real team colors.

Where the idea came from

A few years ago, ESPN broadcasted a live NFL game as a Toy Story cartoon. Every play was re-created to look as if the players were toys playing a game in Andy's bedroom.

I loved that concept, and thought it'd be fun to try to do this with baseball. Baseball is a good fit for it, too. The game already happens one pitch at a time, with a pause in between, and MLB publishes data on all of it while the game is going on. So there isn't much to make up. You mostly just have to draw it.

How it works

MLB has a public API that reports every pitch and every play while a game is going on. Pocket Ballpark reads that feed, works out what each play was, and turns it into animations in the ballpark. The players, the ball, the score and the stats on the scorebug all come from the real game, a few seconds behind it.

Say hi

I'm Willie, and I built this. If you have questions, feedback, or an idea for something it should do, I'd really like to hear it. The easiest way to reach me is on X at @Wilhelm_Willie. Happy to talk about baseball, or the 3D side of it, or anything else.

The fine print

The data comes from MLB's public Stats API, the same feed behind Gameday. This is an independent hobby project. It's not affiliated with, endorsed by, or connected to MLB, MLB Advanced Media, or any club. Team names and colors belong to them.

Built with Next.js, React and three.js. The ballpark, the crowd, the players and every sound in it are generated in the browser, so there are no 3D models or audio files behind any of it.

That's about it.

Go watch a game.

Find a game →