ChessCore was written to support an up-coming commercial Mac Chess User Interface and I have open sourced the library for a couple of reasons:
- 1. I'd like some help adding features and fixing bugs.
2. I have implemented a new binary chess database format, which others might like to adopt, and wanted to provide a reference implementation.
I therefore decided to implement my own format and document it (actually that's still in progress) and make an unencumbered reference implementation using the MIT license. This means ChessCore can be used in commercial and open source projects alike, without restriction.
CFDB uses sqlite3 as its basic storage mechanism, making searching for players, events, sites, etc very quick and it stores game data using a binary format, which unfortunately isn't possible to search. I cannot say that am 100% satisfied with the current implementation, but the format does allow for changes in implementation to be managed, so if better solutions show themselves it's possible to implement them in future versions while maintaining backwards compatibility.
Please have a look at the source code, fork the repo and have a play.
All contributions are welcome.

