xojo_AVW_utils
A module of small functions that the other Xojo projects share: parent directory of a file, digit tests, string-to-text conversion, and similar.
Portfolio
Reusable Xojo modules, a client library for the Internet Chess Club protocol, and hard-won notes on how to keep Xojo projects in git. Git storage is a genuine problem, because the free IDE saves a project as a single binary file.
The other Xojo projects here use these libraries as git submodules.
A module of small functions that the other Xojo projects share: parent directory of a file, digit tests, string-to-text conversion, and similar.
Reads string and integer settings from a configuration file, with default values, multi-line values and include files. It reports which settings the file left unset.
Client-side tooling for the legacy ICC protocol — not the current chessclub.com software.
Connects to the Internet Chess Club and decodes its datagram protocol. It owns the TCP connection. You subclass ICC_Hub to build your own bot on top of it.
Plays chess on ICC. It gets each move from any UCI engine, and it plays many games at the same time.
A worked example for xojo_ICC_connection: it connects, decodes every datagram type, and prints several of them in detail.
Notes on how to use Xojo with git and git submodules. The free IDE saves a project as a single binary file, so git cannot show the differences or update a library in place. These notes give the workarounds.
Xojo is pleasant to build in and awkward to maintain at scale: the free IDE stores a project as a single binary file, so code review, meaningful diffs and shared libraries all need deliberate structure. These repositories are how I solved that for my own work.