This website uses Google cookies to provide its services and analyze your traffic. Your IP address and user-agent are shared with Google, along with performance and security metrics, to ensure quality of service, generate usage statistics and detect and address abuses.More information

Ver sitio en español Go to homepage Contact me
domingo, 2 de noviembre de 2025

Chess Database with AI — Source Code (Part 1)

AIChessDB is a chess game database capable of working with several database servers at the same time. It currently supports Oracle, MySQL, and SQL Server.

It is also an application integrated with artificial intelligence assistants that help users understand and operate the forms, perform configuration tasks, and even teach chess, play against the user or each other, or search and comment on games stored in the database.

This application is part of an open-source project designed to help developers learn and practise the integration of existing applications with artificial intelligence.

You can download the source code from this link.

If you only want the executable, use this one.

In the previous article you’ll also find a video explaining how to use the application and other related download links for the database.

Although the integration itself is relatively straightforward, making everything behave as expected is far more challenging.

AI assistants are not easy to tame, and getting them to speak and act exactly as they should can be quite an arduous task.

In projects like this, clear instructions and good documentation are just as important as well-written code.Achieving a friendly user interface is equally demanding. Response times are sometimes long, and the language used by the assistants depends heavily on the documentation they rely on — even the language it’s written in.

If the documentation is too technical, the assistants will speak in a way most users find inaccessible; if it’s too superficial, they won’t perform their tasks properly.

The main components of this solution are the executable AIChessDB and the class library AIChessDatabase, both implemented in their respective projects.

AIChessDB contains data and documentation files, libraries, and the compiled executable. This structure exists because several components are still in beta phase and are not yet open-source.

Only the binaries are provided, protected to prevent their use with other executables.

The AIChessDatabase library, which implements the core of the solution, is open-source.

Other open-source libraries included in the project are:

  • GlobalCommonEntities: a class library providing general-purpose interfaces for API calls, dependency injection, and user-interface abstractions.
  • DesktopControls: a collection of desktop controls that simplify user-interface tasks, which are usually rather tedious.
  • Resources: mainly embedded resources, such as text strings used across applications, as well as a few helper classes related to resource localisation.

Explaining source code in writing has always struck me as too heavy-going — for both the author and the reader.

Instead of a series of dry texts or tiny, incomplete examples, this time I’ve prepared a video explanation, which you’ll find here:

The video doesn’t cover the entire solution — only the general parts and those related to artificial intelligence.

The chess and database aspects will be discussed in the next chapter.

In this video, I’ve experimented with different ways of presenting the code and the more abstract concepts, so you’ll notice variations in style between sections.

Any feedback to help me refine the most effective approach will be very welcome — whether positive or critical.

That’s all for now.

Thanks for reading, and see you in the next article of the series.

Share this article: Share in Twitter Share in Facebook Share in Google Plus Share in LinkedIn
Comments (0):
* (Your comment will be published after revision)

E-Mail


Name


Web


Message


CAPTCHA
Change the CAPTCHA codeSpeak the CAPTCHA code