Hasty Briefsbeta

Bilingual

Water: A Zig chess library, framework, and engine

6 months ago
  • #zig
  • #neural-networks
  • #chess-engine
  • Water is a comprehensive chess suite written in Zig, providing a performant chess engine library.
  • It offers both an iterative search engine with Alpha-Beta Pruning and Quiescence, and a neural network-powered engine using NNUE.
  • The engine communicates through the UCI protocol and requires Zig 0.15.2 for compatibility.
  • Build steps include 'build', 'run', 'perft', 'bench', 'search', 'package', 'test', 'lint', 'fmt', 'cloc', and 'docs'.
  • The 'perft' suite is extensive, with around 50,000 tests, and is time-consuming; 'bench' is recommended for quick verification.
  • Adding Water as a dependency involves using 'zig fetch' and modifying 'build.zig'.
  • Contributors are welcome, with guidelines provided in 'CONTRIBUTING.md'.
  • Key references and inspirations include chess-library, zigMemMapper, Chess Programming Wiki, Avalanche chess engine, pawnocchio, Pyrrhic, and Stockfish.