portfolio detail
PrepDeck AI chess opponent preparation tool
AI Tools

PrepDeck.

Chess opponent preparation tool — enter any player's username or real name, and PrepDeck maps their exploitable weaknesses, anti-repertoire lines, time-pressure patterns, and psychological profile into a warm Socratic coaching session.

Visit Site
Next.jsTypeScriptStockfishMaia ChessTailwind CSSVercel
Scroll to explore
< 3 min

Prep Time

Full archive

Game History Ingested

Socratic

Coaching Style

PrepDeck
(How We Built It)
01

Challenge

Most chess preparation tools give you engine evaluations — a computer's ideal move in positions your opponent never reaches. PrepDeck flips the question: what does this specific human actually do, where do they crack, and how does their psychology shift after a loss?

02

Approach

Built a pipeline that ingests a player's full game archive, maps opening loyalty and deviation patterns, overlays Maia Chess priors for human-realistic predictions at their exact rating, identifies time-trouble tendencies, and generates a psychological profile. A Socratic AI coach presents findings interactively — asking for your move before revealing the answer.

03

Results

Rated players arrive at the board knowing their opponent's anti-repertoire lines, the positions where they blunder most, how they perform when pressed on time, and the emotional patterns that predict resignation or last-minute errors. Preparation that used to require hours of manual database work now takes under three minutes.

PrepDeck

The full story behind PrepDeck.

(Case Study)
01

The preparation problem: engines don't study humans

Serious chess players prepare before important games. Club players rarely do — not because preparation is unimportant, but because the tools available make it harder than it should be.

The conventional approach involves opening a database, searching for your opponent's games, scrolling through move trees, and trying to find the positions they consistently reach. Then you fire up an engine to evaluate those positions. Then you hope your opponent deviates from theory early enough that the engine lines you memorized still apply.

This approach has a fundamental flaw: engines evaluate the best move in a position. They do not tell you what your specific opponent will actually play, how they respond to pressure, where they consistently collapse in time trouble, or whether a string of losses in your line will make them tilt into aggressive overextension.

PrepDeck was built around a different question. Not "what is the best move here?" but "what will this human actually do, and where are they most likely to make a mistake?"

02

Ingesting a player's full archive

PrepDeck pulls a player's complete game history by username from online platforms or searches by real name for over-the-board (OTB) databases. The pipeline processes every available game — not a sample, not recent games only, the full archive.

From that archive, the system builds several interlocking models:

Opening loyalty and deviation points: which openings does this player return to repeatedly, and at exactly which move do they most often deviate from the mainline? These are the positions where preparation pays off most — the positions they will reach in your game.

Blunder clustering: at what move counts does this player's error rate spike? Many players hold it together through the opening and early middlegame but collapse in complex positions around moves 20 to 30. Others are strong in technical endgames but crack when the position is sharp. Knowing where your opponent is statistically fragile gives you a strategic objective for the game.

Time pressure behaviour: the clock tells a story. A player who consistently uses most of their time by move 25 and plays the last 15 moves in seconds is a different opponent than someone who plays fast early and thinks deep in the endgame. PrepDeck tracks time distribution patterns so you can steer toward positions that force your opponent to think in their danger zone.

03

Maia Chess: what a human at their rating actually plays

Engine evaluations are built on one premise: the position is played perfectly from both sides. This makes them excellent for finding objective truth, but poor predictors of what a human opponent rated 1400, or 1800, or 2100 will actually play.

PrepDeck integrates Maia Chess, a neural network trained on millions of human games at specific rating bands. Maia does not find the best move — it predicts the move that a human at a specific rating is most likely to play in that position. The difference is significant.

An engine might evaluate a sharp sacrificial position as objectively equal. Maia might predict that a 1600-rated player, when faced with that position on the black side, will instinctively choose the passive defensive move in 70% of cases rather than the accurate dynamic response. That 70% is an exploitable pattern. PrepDeck surfaces it.

This is the core distinction of human-focused preparation: you are not solving chess, you are modelling a specific opponent in a specific rating band with specific tendencies. Maia makes that model accurate rather than speculative.

04

Psychological profiling and tilt detection

Elite preparation goes beyond opening trees and move statistics. How does your opponent respond after losing a game? Do they tighten up defensively, or do they overextend aggressively in the next game? When they get into trouble on the board, do they simplify into an endgame they are comfortable with, or do they escalate complexity in hopes of creating chaos?

PrepDeck analyzes performance patterns across game sequences to build a psychological profile. This includes post-loss performance (does their accuracy drop after a defeat or does it rise?), performance variance against stronger versus weaker opponents, opening loyalty under pressure (do they stick to their preparation or deviate to avoid theory?), and resignation versus fighting-to-the-end tendencies.

These patterns give you a strategic orientation beyond the moves. If your opponent historically becomes aggressive after a loss, knowing this changes how you should approach the opening in the second game of a match. If they consistently fight to the last pawn even in objectively lost positions, you will need more precision in converting winning endgames — they will not resign at the moment an engine would.

05

The Socratic coach: preparation that sticks

Receiving a statistical report before a game is useful. Understanding the positions well enough to make decisions at the board — under time pressure, against a live opponent — is the actual goal.

PrepDeck delivers findings through a Socratic coaching session rather than a static report. The AI coach presents key positions from your opponent's game history, asks what you would play, waits for your response, then explains the patterns in your opponent's games and why a particular approach exploits their specific weaknesses.

This method is deliberate. Passive reading of preparation notes before a game is less effective than active problem-solving. When you have already decided what you would play in a critical position and then understood why that move works against this specific opponent, the preparation is internalized rather than memorized. At the board, under pressure, you are drawing on understanding rather than trying to recall a line.

The Socratic format also reveals gaps in your own preparation. If the coach asks about a position and your instinctive answer is wrong for this opponent — even if it might be fine objectively — the correction happens in preparation, not in the game.

06

PGN upload and OTB opponent lookup

Not all opponents have online accounts. Over-the-board tournament players, club regulars, and scholastic players may have no presence on online platforms but still have game records — in local tournament databases, printed scoresheets, or hand-annotated scorecards.

PrepDeck handles both scenarios. For players with online accounts, username lookup pulls the full archive automatically. For OTB opponents, PrepDeck accepts PGN file uploads and scoresheet photos. The photo upload path uses computer vision to parse handwritten scoresheets and convert them into machine-readable PGN — a capability that extends preparation tools to the significant portion of competitive chess played entirely offline.

The real-name search function queries publicly available OTB game databases to find players by name and tournament history, matching against rating histories to confirm identity before pulling game records.

This breadth of input was a deliberate design decision. A preparation tool that only works for players with online accounts is a tool for a narrow slice of the chess-playing population. PrepDeck was built to serve any competitive player who needs to prepare for any opponent, regardless of where that opponent plays.

07

Built by Zealous Digital Solutions — and available as a template

PrepDeck was designed and built by Frank Yao and Zealous Digital Solutions as a demonstration of what AI-augmented custom tools can deliver for niche domains.

The product demonstrates a pattern applicable across industries: take a workflow that currently requires manual expertise — in this case, the preparation process a dedicated coach would run for a player — decompose it into component analytical steps, automate the data-intensive parts, and deliver the output through an interface that matches how practitioners actually think through the problem.

The same architecture applies to sales call preparation, legal discovery review, competitive market analysis, and any domain where the practitioner's edge comes from understanding a specific counterparty rather than from general knowledge.

If you are working on a problem in your industry that follows this shape — rich data about a specific entity, actionable patterns that experts extract manually, and a workflow that could be automated without losing nuanced output — this is the kind of custom AI tool we build at Zealous Digital Solutions.

Ready to out-prepare your next opponent?

PrepDeck is free to start. Enter any chess player's username and get a full opponent profile in under three minutes.