Akshu-on-github / chessengine

A chess engine written in Python with no dependencies

Home Page:https://chessengine.readthedocs.io/en/latest/index.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chess Engine

Documentation Status Linting

A chess engine written in Python with no dependencies. All contributions welcome.

Note

This project is in active development and you may encounter bugs, especially in the game loop.

Contribution Guide

The contribution guide can be found on the documentation page

Features

  • Internal bitboard representation
  • Alpha-beta pruned search
  • Move generation API
  • Opening book

TODOs

  • Move ordering for faster forward search
  • Non-trivial board state evaluation using better heuristics

Usage

Install using pip -

# macOS / Linux (could work on Windows)
python3 -m pip install -U chessengine

# Windows (the primary way)
py -3 -m pip install -U chessengine

Start a game with the computer -

chessengine play

or

python -m chessengine play

If you want to play against another player -

chessengine play -p

or

python -m chessengine play -p

Developer Notes

This project uses the black linter for determining code style.

# Install black via pip.
python -m pip install black==22.10.0

# Format
black .

About

A chess engine written in Python with no dependencies

https://chessengine.readthedocs.io/en/latest/index.html

License:MIT License


Languages

Language:Python 100.0%