A fully functional Chess Engine and GUI application built using Java and Swing. This project implements standard chess rules, move validation.
This project serves as a desktop chess application that allows users to play chess against an AI engine or another human player. It demonstrates the use of:
- Java Swing for rendering the graphical user interface (GUI).
- Object-Oriented Programming principles to manage pieces, board state, and game logic.
- Algorithms for move generation and validation.
- Graphical User Interface: A clean, responsive 8x8 chess board.
- Move Validation: Enforces standard chess rules (valid moves, castling, en passant, check/checkmate detection).
- Visual Assets: Custom images for chess pieces.
- Game States: Detection of Check, Checkmate, and Stalemates.
Swing-Chess-Engine/
├── src/ # Source code files (.java)
├── res/ # Resource files (images/icons for pieces)
├── .gitignore # Git ignore file
└── README.md # Project documentation
Contributions are welcome! If you'd like to improve the engine, fix bugs, or add features: Fork the Project. Create your Feature Branch (git checkout -b feature/AmazingFeature). Commit your Changes (git commit -m 'Add some AmazingFeature'). Push to the Branch (git push origin feature/AmazingFeature). Open a Pull Request.
Distributed under the MIT License. See LICENSE for more information.