lichess.org
Donate
An abstract, professional logo design combining the letters "CGA" with chess imagery.

me and chatGPT

Introducing CGA: A Chess Game Analyzer

AnalysisTacticsChess engineChess PersonalitiesSoftware Development
CGA is a Python-based module for chess study

Introducing CGA: A Chess Game Analyzer

Ever wondered which games from a grandmaster's career are truly worth studying? I built CGA (Chess Game Analyzer) to answer that question systematically.
CGA is a Python-based pipeline that processes large PGN collections, runs Stockfish analysis, and scores games using a multi-factor algorithm designed to surface the most instructive and brilliant encounters. It weighs tactical sacrifices, evaluation swings, positional accuracy, and game context to identify games that reward careful study.

What it does

The system analyzes thousands of games and ranks them by "brilliancy score" — a weighted calculation that considers material sacrificed, engine evaluation improvements, and contextual factors like opponent strength and tournament significance. Games where a player finds difficult moves that dramatically shift the evaluation score highest.
I developed it while analyzing Fabiano Caruana's complete game collection, but the tools work with any PGN database.

Two repositories

QARC handles the core analysis pipeline: PGN parsing, Stockfish integration, caching, and scoring algorithms. github.com/wdjoyner/qarc
Chess contains game collections, generated reports, and LaTeX templates for producing annotated game documents with diagrams. github.com/wdjoyner/chess
Both are open source. Contributions and feedback welcome.

If you try it out, I'd love to hear your feedback.