NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev
A modern looking chess board with advanced features like highlighting the move possibilities, drag-drop pieces, draw arrows etc.
Last release 4 months ago
25 May 2026
Release timing varies
gaps range from 9 days to 1.4 years
Nearly every release is documented
notes for 14 of 14 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
14 releases · first in 2024
One column per month.
New BoardTheme.kingCheckColor (default null — no tint, matches 3.0.0) makes in-check highlighting themable without a breaking change.
BoardTheme value type bundling every paintable colour, with
BoardTheme.classicGreen (default), .brown, .blue, .purple,
.monochrome presets and a copyWith. Pass via the new
AdvancedChessBoard(boardTheme: ...) parameter. Legacy
lightSquareColor / darkSquareColor / kingBackgroundColorOnCheckmate
continue to work and take precedence when explicitly passed.PieceSet abstraction with a single imageFor(PlayerColor, chess.PieceType) lookup and a PieceSet.fromAssetMap(...) convenience
factory. Default PieceSet.chessDotCom wraps the bundled pieces. Pass
via the new AdvancedChessBoard(pieceSet: ...) parameter.CoordinateLabels enum with inside (default, 3.0.0 behaviour),
outside (labels in gutters outside the 8×8 playing grid), and none
(no labels, no gutter). Pass via the new AdvancedChessBoard(coordinates: ...) parameter. The AspectRatio(1) contract still applies to the
playing grid in every mode.SoundEvent / SoundPack interface and SilentSoundPack default for
move audio. Priority-ordered classification:
gameEnd > promote > castle > check > capture > move. No bundled audio,
no plugin dependency added — consumers plug in their own backend (e.g.
package:audioplayers). Pass via the new
AdvancedChessBoard(soundPack: ...) parameter.HintArrow value type for engine / hint-API suggestion arrows, rendered
with a dashed shaft and stroke-only outlined arrowhead in the new
BoardTheme.hintArrowColor. Auto-dismisses on the next successful
move, or after an optional Duration. Pass via the new
AdvancedChessBoard(hintArrow: ...) parameter.enableMoves: false.HighlightOverlay colour now threads through BoardTheme.legalDestinationColor
— the default remains pixel-identical to 3.0.0.AdvancedChessBoard now re-precaches the active PieceSet's 12
ImageProviders on didUpdateWidget when pieceSet changes.BoardTheme.kingCheckColor (default null — no tint, matches
3.0.0) makes in-check highlighting themable without a breaking change.Chess piece is scaled while dragging.
Added parameter to call controller methods without notifying listeners.
Changed colours of file and rank text to inverted colours of squares.
Squares related to last-played move are highlighted by default.
Breaking: playerToMove renamed to playerColor on ChessBoardController. The same rename applies to the boardOrientation values on AdvancedChessBoard. M
playerToMove renamed to playerColor on ChessBoardController.
The same rename applies to the boardOrientation values on
AdvancedChessBoard. Migrate by replacing every playerToMove read on the
controller with playerColor, and every PlayerToMove.white/black enum
reference used as a boardOrientation with PlayerColor.white/black.arrows: parameter on AdvancedChessBoard).Renamed playerToMove to playerColor (see 2.0.0 for migration).
playerToMove to playerColor (see 2.0.0 for migration).Added playerToMove on the controller.
playerToMove on the controller.- Minor layout fixes.
Fixed listener not firing on moves.
Updated flutter_lints to ^5.0.0.
flutter_lints to ^5.0.0.- Added enableMoves parameter.
enableMoves parameter.Removed unused chess_vectors_flutter dependency.
chess_vectors_flutter dependency.Initial release of advanced_chess_board.
Your coding agent can read these notes before it upgrades. Set up the MCP server →