github.com/chadian/crystal-chess
main / published Jan 1, 2025 / repository
The game of chess written in crystal lang
crystal-chess
A work-in-progress implementation of the game of chess written in crystal. The goal of this project is mostly to explore crystal lang and experiment with how board game mechanics and rules work together.
API
- ArrayMatrixCoordinate
Represents a position within the array matrix representation how pieces are stored
- Bishop
- Board
- BoardCoordinate
Represents a position on the board by a file letter and a rank number
- BoardStructure
- Direction
- Game
- GameStage
- GameTrackedMove
- Interactive
- Jump
Describes the movement of Knights LONG - The jump starts with two squares and then one over SHORT - The jump starts with one forward and then two over
- King
- Knight
- Pawn
- Piece
- PieceColor
- PieceMovement
Represents a movement for a piece that is either in a direction by a number of squares or in a direction described by a "jump" (for knights)
- Queen
- Rook