Technology used to build it
- Next.js
- TypeScript
- Cloudflare Workers
- Game data pipeline
- Mobile PWA
Public demo in development
A KBO fan service connecting today's game with baseball memory
After choosing a team, fans open a game room for starters, matchups, recent form, and postgame review, moving across dates rather than watching a live ticker — the dashboard is deliberately near-real-time, built on caches from five minutes to six hours. Marking a game as attended files it in a diary that works out a personal win rate and which ballparks it came from, the one part of the product built entirely from the fan's own data. Three daily games are rebuilt each day from official career records, and each screen carries the record date and a link to the official source, so no figure on it is invented; any day from the past two weeks can be replayed as practice without touching the season score. Player photographs are hidden by default, fan records are kept without an account, and a name reaches a ranking only if that fan turned a public profile on.
DUGOUT 9 is an independent fan project, not an official KBO service. Reports, fan records, and rankings now persist on a single deployment and player photographs are hidden by default, but the use of official data and club trademarks still has to be settled before anything here is called live operation.
Service development record
The product brings scattered game information and fan content into a team-first game room, then adapts the experience across pregame, live, and postgame moments while designing a reason to return.
These are inputs for the next operating or validation decision, not outcomes already achieved.
Change history
Dated by when the change shipped in the product, not by when this page caught up. Lines are added rather than replaced, so what the service withdrew stays readable next to what it gained.
Made the archive real: pick any date from the past two weeks and that day's three games open as practice, outside the season score and the streak. Before, every past date opened today's games, and today's still cannot be previewed from the archive.
Added the attendance diary: mark a game you went to and the product works out your own win rate and which ballparks it came from — the one screen built from the fan's record rather than the league's.
Started rebuilding the three daily games each day from official career records, with the record date and a link to the source on the screen.
Showed how other fans answered a quiz question once it is over, including the wrong answer most of them picked. Nothing appears below a sample of ten.
Made the public-profile switch actually do something: it is off by default, a ranking shows a private fan until it is turned on, and clearing your record now clears the server's copy too.
Stopped showing player photographs by default, falling back to initials until the scope of permitted use has been established.
Started building an installable Android shell on every commit. It loads the web build directly, so deploying the web updates the app — it is not listed in any store.
The question I want feedback on now
What do you check first when preparing to watch your team's game, and what would make you return after the final out?
Leave feedback