Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/scar17off/chess-bot

An interactive chess game with an AI opponent, implemented in JavaScript
https://github.com/scar17off/chess-bot

bot bot-development bots canvas canvas-game chess chess-ai chess-bot chess-bot-2024 chess-com chess-engine chess-game game game-development html-css-javascript html-game html-games javascript js

Last synced: about 1 month ago
JSON representation

An interactive chess game with an AI opponent, implemented in JavaScript

Awesome Lists containing this project

README

        

# Chess Bot ♟️

![GitHub](https://img.shields.io/github/license/scar17off/chess-bot)
![JavaScript](https://img.shields.io/badge/language-JavaScript-yellow)
![Version](https://img.shields.io/badge/version-1.0-blue)
![GitHub stars](https://img.shields.io/github/stars/scar17off/chess-bot?style=social)
![GitHub forks](https://img.shields.io/github/forks/scar17off/chess-bot?style=social)
![GitHub issues](https://img.shields.io/github/issues/scar17off/chess-bot)
![GitHub pull requests](https://img.shields.io/github/issues-pr/scar17off/chess-bot)
![GitHub last commit](https://img.shields.io/github/last-commit/scar17off/chess-bot)
![GitHub repo size](https://img.shields.io/github/repo-size/scar17off/chess-bot)
![GitHub contributors](https://img.shields.io/github/contributors/scar17off/chess-bot)
![GitHub commit activity](https://img.shields.io/github/commit-activity/m/scar17off/chess-bot)
![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/scar17off/chess-bot)

This project is an interactive chess game with an AI opponent, implemented in JavaScript. ♔♕♖♗♘♙

## Features 🚀

- Play chess against an AI opponent 🤖
- Interactive chessboard with piece movement ♟️
- Move validation ✅
- Undo and redo moves ↩️↪️
- Move history display 📜
- Best move suggestion 💡
- Auto-move mode 🔄
- Free mode for piece placement 🆓
- Move analysis 🔍

## Files 📁

- `index.html`: The main HTML file that structures the web page 🌐
- `app.js`: Contains the game logic and user interface interactions 🧠
- `bot.js`: Implements the AI opponent using the minimax algorithm 🤖
- `LICENSE.md`: The license for the project 📜

## How to Use 🎮

1. Open `index.html` in a web browser to start the game. 🌐
2. Click on a piece to select it, then click on a valid square to move. 🖱️
3. Use the checkboxes and buttons below the board to access different features:
- Enable Move Analysis: Highlights the best move for the current player 🔍
- Enable Auto Move: Automatically makes moves for the white player ⚪
- Free Mode: Allows free placement of pieces on the board 🆓
- Make Best Move: Makes the best move for the current player 🏆
- Undo: Reverts the last move ↩️
- Redo: Reapplies an undone move ↪️

## AI Implementation 🧠

The AI uses the minimax algorithm with alpha-beta pruning to determine the best move. The evaluation function considers piece values and positional advantages. 🤖♟️

## License 📜

This project is licensed under the MIT License. See the [LICENSE](LICENSE.md) file for details.

Feel free to contribute to this project by submitting pull requests or reporting issues! 🙌