Skip to content

mryadavdilip/chess_interface_dart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Buy Me A Coffee

chess_interface_dart

Complete chess functionalities including FEN initialization, en-passant, checkmate and draw rules. This is a pure dart package for backend and doesn't include flutter components for front-end. Visit chess_interface for complete front-end package

Features

  • ✅ Built-in move validation for all standard piece types
  • 🔄 Supports en passant, castling, and pawn promotion logic
  • 📐 Interface-driven board interaction for flexible state management
  • ⏱️ Countdown stream for both players.

Getting Started

Add the package to your pubspec.yaml:

dependencies:
  chess_interface_dart:
    git:
      url: https://github.com/mryadavdilip/chess_interface_dart.git

OR

dependencies:
  chess_interface_dart: ^1.0.8

Then import these:

import 'package:chess_board_widget/logical_interface/interface.dart';

Example

ChessBoardInterface game = ChessBoardInterface(
    // optional
    fen: 'qkN/p7/8/8/8...',
    
    // optional
    timeLimit: Duration(minutes: 10),
  );

Move Validation

Use MoveValidator.isValidMove() to validate legal chess moves:

bool isValid = MoveValidator.isValidMove(ChessBoardInterface game, Position from, Position to);

It supports:

  • All standard chess moves
  • Pawn special rules
  • Castling logic (including history tracking)
  • En passant and double pawn pushes

Arbiter

Arbiter to handle events like game over, time out and pawn promotion:

And more..

File Structure

  • arbiter.dart – Game over, timeOut, and promotion handler
  • interface.dart – Board interaction interface
  • move_validator.dart – Move legality checker
  • piece.dart – Piece model and asset loader

Contributing

Contributions are welcome! Please open issues and pull requests to help improve this Package.

License

MIT License. See LICENSE for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages