Building EloCoach
A public engineering notebook. What I built, what broke, what it cost, and what I changed afterwards.
Experiments
I won this game. Stockfish says I was losing for twenty moves.
The same 61-move game through raw Gemini and through EloCoach, with every board claim replayed in chess.js and an honest scoreboard where neither coach comes out clean.
10 min read
Experiments
I gave Gemini and EloCoach the same four-move game. Both got things wrong.
A 582-rated blitz loss, a bare PGN versus the full EloCoach pipeline, every claim replayed in chess.js, and what the errors say about where verification has to live.
9 min read
LLMs
We tried other models. Gemini is still the one, for now.
Prompt tests, a model that burned its whole budget thinking, and why the coach of the future might run on Claude or GPT when the coach says so.
8 min read
Infrastructure
What it costs to run EloCoach, and why the free tier needs a gate
Real numbers from a beta paid out of my own pocket, what changes when users show up, and how we plan to price it fairly without punishing early players.
7 min read
Engineering
Maia 3, your rating, and the day its favourite opening move was h2h3
Why Maia 3 beat per-band models for coaching, how we adjust its rating input by time control, and the bug that scrambled every "human move" until a sanity check caught it.
9 min read
Infrastructure
The boring stack that runs EloCoach, and why each piece is there
Koyeb, Postgres, Inngest, Resend, OpenRouter, PostHog, Expo, Adapty, Giphy, Cloudflare and GitHub: what each does, what it costs us in complexity, and one diagram of the whole thing.
9 min read
Engineering
My coach kept inventing chess moves
Illegal lines, empty boards, and the unglamorous machinery (chess.js, validators, a rule about who writes last) that keeps an LLM honest about the board.
8 min read
Why we built it
Chess coaching is priced for the few. Most of us were never in the room.
Quotes that read like a mortgage, a full programme attached, and what that does to everyone who just wants to stop hanging pieces.
5 min read
Why we built it
I pasted my games into Gemini for a month. Then I built what I actually wanted.
The surprisingly good, deeply inconvenient reviews that started EloCoach, and why I wanted a coach that remembers me instead of repeating "watch out for blunders".
6 min read