Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

289 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHESS TRAINER - Versión: v0.1.276-8a2b48d

chessinsightai

ChessInsightAI is a chess analysis and training project focused on importing games, enriching them with engine and tactical signals, building machine-learning datasets, and preparing recommendation workflows for future coaching features.

Documentation index

Main entry points

Technical documents

Tech stack

  • Frontend: React, TypeScript, Vite, Material UI
  • Backend: FastAPI, PostgreSQL, Alembic
  • ML and analysis: Python, MLflow, Stockfish, notebook-based experimentation
  • AI coaching direction: LangChain, local LLM workflows, retrieval and orchestration modules

Current capabilities

  • Import games from external sources and local PGN collections
  • Analyze positions with Stockfish-oriented feature extraction
  • Label tactical or error-oriented training signals
  • Build machine-learning datasets and supporting exports
  • Track model experiments and supporting ML utilities
  • Provide a base for future coaching, recommendation, and explainability features

Repository map

Area Purpose Current status
src/frontend/ React frontend and chess UI work Implemented
src/api/ FastAPI backend and API-facing services Implemented
src/modules/ PGN parsing, feature engineering, tagging, reporting, and utility modules Implemented
src/scripts/ Operational scripts for downloads, feature generation, training data, and CLI workflows Implemented
src/ml/ MLflow setup, ELO standardization, dataset analysis, training utilities, and prediction helpers Implemented
src/services/ Service wrappers for uploads, studies, and integration logic Implemented
src/ai_coach/ Coaching-oriented package structure and orchestration work Partial / evolving
docs/ Technical and theoretical documentation Implemented and expanding
tests/ Automated tests and test runner utilities Implemented, environment-dependent

Quick start

Docker setup (recommended)

Windows users

.\build_up_clean_all.ps1

This script builds and starts the main application environment and related development services.

Manual Docker setup

docker-compose build
docker-compose up -d

Local development

# Frontend
cd src/frontend
npm install
npm run dev

# Backend
cd src/api
python -m uvicorn main:app --reload --port 8000

Testing

CI baseline

The repository workflow in .github/workflows/test.yml installs requirements.txt and runs:

pytest tests/

Local note

Some tests assume project-specific import paths and runtime services. In this workspace, a baseline run currently fails during collection because modules is not available on the default PYTHONPATH.

Machine-learning context

Chess games are represented primarily through PGN move sequences and derived engine features. From those inputs, the project can build datasets that capture:

  • openings and move sequences
  • tactical opportunities and tactical mistakes
  • engine score differences and error labels
  • rating context and player strength normalization
  • game outcomes and quality signals

From a theoretical point of view, the repository supports several ML problem families:

  • classification for error labels or tactical pattern categories
  • regression for score-based or quality-based estimations
  • clustering for player-style or dataset-segmentation studies
  • recommendation for future training and coaching flows

Relevant implementation references include src/modules/ml_preprocessing.py, src/modules/feature_engineering.py, src/modules/predict_error_label.py, src/ml/train_error_model.py, and src/ml/chess_error_predictor.py.

Status and roadmap

Topic Status Notes
PGN ingestion and dataset preparation Implemented Covered by modules and scripts under src/modules/ and src/scripts/
Tactical and feature extraction Implemented Stockfish- and tactics-related scripts already exist
ELO standardization Implemented See src/ml/elo_standardization.py and related utilities
MLflow tracking support Implemented PostgreSQL setup and utilities are present in src/ml/
Real-time prediction serving Partial Predictor modules exist, but production API integration remains future work
Explainability and coaching orchestration Planned Mentioned by docs and package layout, not fully implemented yet

Credits

Developed by cmessoftware as part of practical work connected to a data-science learning path.

About

Chess trainer software using data scientes tools , stockfish chess motor implemented in docker environment

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages