My client had an existing script to process their win-loss record for chess games played via Chess.com and display statistics. The project was to optimize the code which I did by implementing multithreading with concurrent.futures and encapsulating non-thread-safe objects, achieving a 60% speedup. I also enhanced visualization by fixing PGN parsing issues, and thereby ensuring accurate sunburst plots. I integrated the Chess.com and Lichess APIs for automated data retrieval, resolving parsing bugs and a win/loss coloration issue.
Built with
- Python
- Multithreaded Programming