
Zero to CI: Full-Stack Dashboard in One Session
Empty directory at 8 AM. Green CI pipeline by dinner. 30 commits across two projects. Here's how the day went. The Project: Braves Booth Intelligence The Atlanta Braves radio broadcast team needs real-time data during games. Statcast metrics, park factors, cohost context, narrative threads — all on a dark dashboard optimized for a broadcast booth where you glance, grab a number, and keep talking. This isn't a web app that happens to show baseball data. It's a broadcast operations tool. That distinction drives every technical decision. The Stack (and Why Each Piece) Layer Choice Why Not the Alternative Frontend React 18 + Vite 6 + TypeScript 5.7 Next.js is overkill — no SSR needed for a booth dashboard CSS Tailwind v4 CSS-first config, no tailwind.config.js Backend Fastify 5 + pino Express is slow and has no built-in schema validation Database SQLite + better-sqlite3 No network round trips. WAL mode. Broadcast can't wait for Postgres Data FastAPI + pybaseball Statcast is Python-native.
Continue reading on Dev.to React
Opens in a new tab



