Kaissa's feature set and roadmap. Everything that makes you a stronger player is free - there is no paid tier, and there never will be. The through-line is the adaptive, spaced, implicit-learning loop that runs across every mode rather than being bolted on as a separate library of lessons.
These are standard chess-training and study capabilities; Kaissa's implementations, content, and assets are its own or come from open, public-domain sources (credited in THIRD-PARTY-NOTICES.md).
Status: [x] built (core + client) - [~] core built, client UI pending - [ ] planned.
- Multi-move puzzles: play the whole solution line; the opponent's replies play automatically -
PuzzleSession - Large bundled set - 52,500 positions spanning the full rating range (about 400 to 3100, i.e. beginner through grandmaster), with theme tags
- Difficulty bands from Beginner to Grandmaster; the hardest puzzles (2600+) are included, not capped
- Rated adaptive mode: Glicko-style rating with spaced repetition per pattern - the core loop
- Custom practice by theme, by difficulty band, and a Weakness generator that builds a tailored set from your weakest patterns - on-page mode picker
- From your games: drill the exact positions where you went wrong in your own games, served back as puzzles -
KaissaPractice - Daily puzzle -
DailyPuzzle - Hint, Solution (played out), Retry, Next, and analyze-this-position
- Theme chips, side-to-move indicator, puzzle and player ratings, timer, streak
- Weakness report: drill the weakest motif, chosen by the skill model -
WeaknessReport
- 3-minute, 5-minute, Survival, and Streak modes (Streak: untimed, one wrong ends it, one skip allowed)
- Three strikes ends the timed runs; difficulty ramps each solve; the timed modes reward consecutive solves with combo bonus time -
RushSession - Countdown/count-up timer, strike indicator, score, in-run streak, per-mode personal best
- A running clock with a difficulty ramp; a combo of consecutive solves tops the clock up at each milestone -
StormScoring - A miss costs time and resets the combo, but the run continues (unlike Puzzle Blitz's three strikes); best run and best combo kept
- Seven named practice modes generated from the shared puzzle content, each a filter over the same library so they grow with it -
DrillFactory - Time Trainer, Intuition, Defender, Advantage Capitalization, Checkmate Patterns, Opening Improver (solve on the board); Blunder Preventer (pick the stronger of two candidate moves)
- Play against an adaptive bot (engine capped to your level) -
KaissaGame - Human-like opponents (Maia): neural-network bots (Maia 1100-1900) that play like a human of that rating, on Leela Chess Zero at one node -
MaiaOpponent - Bot ladder: the Stockfish and Maia opponents are characters with a rating and a playing style (Hunter / Guardian / Savage / Observer / Mediator), ordered weakest to strongest; beating one marks it, and the picker tracks how far you have climbed -
BotRoster - Human move timing: the bot spends time like a person - quick in book and on recaptures, longer in sharp positions - and in a timed game it spends that time from its own clock and can get into time trouble -
MoveTimeModel - Bot-speed setting; time controls (untimed / 3 / 5 / 10 / 15|10), clocks, flag detection; takeback, resign, rematch, flip; keyboard move entry
- Decode as you play: an optional coach panel reads the current position (threats, plans, piece roles, concepts) each move, without ever handing you the move -
PositionCoach - Move list with click-to-review, captured-piece trays, live evaluation bar
- Post-game review: ten move classes (Brilliant to Blunder, with Book, Great and Miss), accuracy for both players, opening and how far it stayed in book, key turning points, a performance-rating estimate, and per-move commentary -
GameAnalyzer/MoveClassifier/MoveCommentary - Mistakes routed automatically to spaced practice, tagged by motif; drill them back as a "From your games" puzzle feed -
GamePractice - Position coach: a five-tab plain-language read - Threats, Best moves, Plans, Piece roles, Concepts - templated from the position and the engine's lines (no cloud, no language model). Also draws the read on the board: green best move, red threats, blue piece roles. Works on the analysis board and while stepping through a game review -
PositionCoach - Analysis board: play and branch any line with an evaluation bar, several engine lines at once (click one to play it out), a clickable move list, the opening name, load-a-FEN and copy FEN/PGN, and play-vs-computer from the position -
AnalysisSession/KaissaAnalysis - Hover an engine line to preview its first moves on the board without playing them; type a move in algebraic or long notation to play it -
MoveEntry - Studies: step through an annotated master line move by move with a note on each move; lessons authored as PGN, so more can be added as data -
PgnStudy/StudyLibrary - Drag-piece board editor (2D): piece palette, click-to-place, eraser, side-to-move and castling toggles, clear/reset, apply to load; FEN paste also works
- Explorer: play any moves; the position is named (ECO + opening) and its book continuations are listed with the opening each leads to -
OpeningBook - Browse and learn: 3,790 named openings grouped by first move, searchable, with mainline stepping
- Repertoire drill: recall your own book moves, scheduled per decision, each move on a Chessable-style recall ladder (Level 0-8, "next in ...") and tagged with the pawn-structure chunk it belongs to -
RepertoireSession/SrLevel - Analyze or open any position in the analysis board
- Expeditions: master an opening by winning a set number of games against a bot from its position; per-expedition record kept -
Expeditions/ExpeditionRun - Per-move popularity and result statistics (needs a games database, not yet shipped)
- Drill trainer: play instructive endgames against the engine toward a goal (win / draw / promote) with a pass/fail result -
EndgameLibrary/DrillEvaluator - Categories (Checkmates including the bishop-and-knight mate, King & Pawn, Minor Piece, Rook including Lucena, Queen including queen-vs-rook); Hint, Retry, Next, Flip
- Play from any position against the engine -
KaissaGame(fen) - Deeper theory positions (Philidor defence, more rook endings) and DTZ-perfect tablebase play
- Guided lessons: each teaches a motif in plain terms, then drills it on real positions you solve on the board, with feedback and completion tracking -
LessonLibrary/LessonSession - Lessons grouped by topic (Tactics, Checkmates); hint, restart, flip, and per-lesson progress saved
- Longer courses and a wider lesson catalogue
- Board Vision: timed 30-second light/dark square drill with score, best, and L/D keys -
VisionSession - Coordinates: timed 30-second find-the-square drill; pick your side and hide the labels to train recall -
CoordinateSession - Memory: a position is shown briefly, the board clears, and you rebuild it from memory by stamping pieces; each solve adds a piece and shortens the look -
MemoryController - Captures & Threats: a 30-second drill - click every enemy piece the side to move can capture, then submit; trains the instant "what is hanging" read
- Visualization: solve a short tactic while the pieces are faded, fading further each solve (50% to fully blind); the board and its coordinates stay, only the pieces fade -
Board2D.SetPieceOpacity - Solo Chess: the single-player capture puzzle - every move must capture, no piece captures more than twice, a king can never be taken, clear the board to one piece; generated to always be solvable -
SoloChess - Guess the Move: play a famous out-of-copyright game as one side and predict each move, scored against the master's move -
MasterGames/GuessMoveSession - Tactics found vs missed: your games are scanned for forks, pins, mates and hanging pieces, and the insights dashboard shows how many you took versus let slip
- Insights dashboard: headline stat tiles, a rating-over-time chart, tier/XP progression, per-mode summaries, move-quality mix, accuracy by phase, tactics found-vs-missed, and the pattern-mastery map, with a one-tap drill of the weakest motif
- Improvement areas: six sides of your play (Tactics, Endgame, Advantage capitalization, Resourcefulness, Time management, Opening) each scored 0-100 from your own games against a rating-indexed baseline, with a plain-language read and a link to the matching drill -
WeaknessDashboard - Achievements: milestone badges earned from your own play (first win, climbing the bot ladder, puzzle streaks and centuries, reaching levels in the drills) -
KaissaAchievements - Weekly study plan: a short, prioritized list generated from your weakest axes and patterns, worst gap first, each pointing at a drill -
StudyPlan - Player rating with history, streaks, and accuracy -
KaissaTrainer.GetStats() - Per-pattern mastery map derived from the spaced-repetition schedule - the pattern library made visible -
PuzzleProgression - Hybrid XP and named tiers (Wood through Grandmaster) alongside the rating -
PuzzleProgression - Daily streak that counts every kind of practice - play, drills, Puzzle Blitz, Solo Chess - not only puzzles -
KaissaStreak - Quests and a rank ladder (Pawn to King) driven by your own progress snapshot -
QuestBoard - Shop: coins earned from play unlock cosmetic board and piece tints; cosmetics only, never strength or gated training -
CosmeticShop - Goals, reminders, and leagues
- Onboarding and rating calibration: an intro screen, a short adaptive run with a progress bar, side-to-move badge and per-answer feedback, and a rating reveal with a level descriptor that seeds your starting rating -
CalibrationSession - Settings: a live board preview, clickable board-theme swatches (including a high-contrast, colour-blind-safe theme), and a picker for 14 flat-board piece sets, with grouped toggles for sound, move input, move hints, auto-queen, premove, bot speed, board flip, board style (2D/3D), piece style, coordinates, evaluation bar, display mode, and a confirm-guarded progress reset
- Shared board on every screen: drag or click, legal-move dots, highlights, sounds, premove, glide, promotion picker; a 2D or 3D board (toggle)
- Board feel: capture pop, ease-out glide, piece lift on grab, and a solve/win celebration flourish; sampled sound with selectable themes (Sfx, Piano, NES, Futuristic, Classic)
- Right-click annotations (arrows and square highlights) on both boards
- Accessibility: optional shape markers on highlighted squares (ring for check, bracket for last move) so highlights do not rely on colour alone -
Board2D/ Settings toggle - Home dashboard: a snapshot (rating, tier, day streak, patterns due) and cards that launch every mode, with a first-run calibration prompt
- Consistent nav-rail / board / panel layout; springy hover and press feedback on clickable elements; fade transitions between screens; a branded startup animation
- Fast content load: opening and puzzle indexes are precomputed offline, parsed once per run, and warmed on a background thread at launch, so pages open near-instantly
- Cloud sync; mobile (embedded engine for iOS)
Kaissa is a single-player, offline trainer. Live online play - matchmaking, head-to-head puzzle races, tournaments, clubs, chat, spectating, and global leaderboards - needs a server and a player population and is deliberately not part of the project. Everything that improves your own play is.
- Everything that makes you stronger is free. Optional spending is cosmetics and convenience only.
- The adaptive, spaced, implicit-learning loop runs through every mode, not bolted on.
- Your own games and mistakes feed your training automatically.