The ChessAIThon project (2025-1-ES01-KA220-VET-000354329) is co-funded by the European Union. The views and opinions expressed in this publication are those of the author(s) only and do not necessarily reflect those of the European Union or the Spanish Service for the Internationalisation of Education (SEPIE). Neither the European Union nor the National Agency SEPIE can be held responsible for them.
Table of Contents
Reference 1
Convert to ChessAItion Format
https://www.kaggle.com/code/xxjcaxx/convert-to-chessintion-format
This Kaggle notebook is the code we use in our project to convert from CSV files with FENs and Best Moves to 77x8x8 and format Parquet files to use them training our AI model.
Reference 2
FEN Display Tool
http://www.ee.unb.ca/cgi-bin/tervo/fen.pl
Simple tool to quick visualizations of FEN representation in a graphic board.
Reference 3
Suggested reading and online resource reference as aboveChess programming wiki about code with FEN
https://www.chessprogramming.org/Forsyth-Edwards_Notation
The Chess Programming Wiki page on Forsyth-Edwards Notation (FEN) is not just a reference—it is the authoritative, must-read technical specification for anyone coding chess, especially for this project. This resource provides the deep, formal technical knowledge required to move beyond simple library calls (like chess.Board()) and truly understand the data structure students are manipulating.
Reference 4
Wikipedia about PGN
https://en.wikipedia.org/wiki/Portable_Game_Notation
We won't use PGN (Portable Game Notation) directly in our AI project, but it's essential to understand it because it's the dominant format for shared chess datasets. PGN is critical because it functions as the game's official, human-readable transcript, storing the entire history of moves and metadata, and relying on FEN to define board states at any point. To leverage existing open-source data (e.g., from Kaggle or Lichess), students must know how to parse PGN to extract the FENs required for our project.
Reference 5
Chess Libraries for recommended languages
https://python-chess.readthedocs.io/en/latest/
https://jhlywa.github.io/chess.js/
https://github.com/xxjcaxx/chessmarro-board/tree/master
If you want to teach Chess and code, you may use libraries that help to convert boards and moves and manage the rules of chess. In this project, we developed a Chess Board library to use it in our Javascript app Chess Minds. It is called Chessmarro Board and works with Web Components.
Reference 6
ChessAIthon Technical memory
https://github.com/xxjcaxx/ChessAIThon/tree/master/documentacion
To independently replicate this project, gain deeper insight into our proprietary file format (including the 77x8x8 representation), or thoroughly review the details of our AI training methodology, consult our comprehensive development documentation. This is your essential resource for the complete technical specifications and implementation guides
Reference 7
Encouraging students to become familiar with consulting reliable technical sources. Developing the habit of reading and navigating official documentation strengthens their autonomy and deepens their understanding of core programming concepts and data structures.
Official Technical Resources
To support this habit, students should be directed to the following foundational sources:
Reference 8
Essential Data Science Documentation
Developing the ability to navigate these specific libraries is a milestone for any aspiring data scientist:
Why Documentation Matters
Versioning: As libraries update, certain functions become "deprecated." The official docs are the only way to ensure you are using the modern, supported syntax.