|
|
libscid is a standalone extraction of the library-grade parts of Scid and ScidUp. It is intended for chess tools, analysis pipelines and GUIs that need mature PGN, game, database, ECO and name normalisation functionality without depending on a desktop application.
LibScidCpp::Core: board state, moves, games, movetext, notation and PGN.LibScidCpp::Database: Scid database sessions, indexes, names, filters, searches, opening-tree statistics and game load/save workflows.LibScidCpp::Eco: ECO code values and opening-position classification.LibScidCpp::Spelling: spelling-file-backed name correction and player metadata.
- Quick Start: compile a small
consumer with
g++, Make or CMake. - Installation: install a release archive or build and install from source.
- Examples and Recipes: choose an example by task.
- Architecture and Diagrams: understand the public model before drilling into API details.
- API Documentation: browse the generated public header reference.
cmake_minimum_required( VERSION 3.23 )
project( libscid-consumer LANGUAGES CXX )
find_package( libscid-cpp CONFIG REQUIRED )
add_executable( libscid-consumer main.cpp )
target_compile_features( libscid-consumer PRIVATE cxx_std_20 )
target_link_libraries( libscid-consumer PRIVATE LibScidCpp::Core )Configure it with CMAKE_PREFIX_PATH pointing at a libscid installation:
cmake -S . -B _build -DCMAKE_PREFIX_PATH=/path/to/libscid
cmake --build _buildlibscid is distributed under the GNU GPL v2; see COPYING. Unless stated otherwise, modifications and additions in this repository are licensed under the same terms.
