Vincent Velociter 65e62ace3c Merge pull request #54 from HaonRekcef/lazy-pgn
Add lazy parsing for multi-game PGN strings + tests
2026-05-19 10:18:00 +02:00
2026-05-18 10:33:39 +02:00
2024-10-07 00:39:39 -04:00
2024-08-01 10:52:16 +02:00
2022-09-06 12:40:03 +02:00
2026-05-18 11:01:21 +02:00
2026-05-17 14:16:19 +02:00
2022-07-20 11:06:56 +02:00
2026-05-17 14:16:19 +02:00
2026-02-19 10:37:30 +00:00

Tests pub package package publisher Discord

Chess and chess variant rules written in dart for native platforms (does not support web).

Features

  • Completely immutable Position class
  • Read and write FEN
  • Read and write SAN
  • Chess rules:
    • move making
    • legal moves generation
    • game end and outcome
    • insufficient material
    • setup validation
  • Chess960 support
  • Chess variants: Antichess, Atomic, Crazyhouse, KingOfTheHill, ThreeCheck
  • PGN parser and writer
  • Bitboards
  • Attacks and rays using hyperbola quintessence

Example

import 'package:dartchess/dartchess.dart';

final pos = Chess.fromSetup(Setup.parseFen('r1bqkbnr/ppp2Qpp/2np4/4p3/2B1P3/8/PPPP1PPP/RNB1K1NR b KQkq - 0 4'));
assert(pos.isCheckmate == true);

Additional information

This package was heavily inspired from:

S
Description
Dart chess library for native platforms
Readme GPL-3.0 1.6 MiB
Languages
Dart 100%