Skip to main content

A chess engine with no dependencies

Project description

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 -

python -m chessengine.play 

Developer Notes

This project uses the black linter for determining code style.

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

# Do the lint!
python -m black --check --verbose .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chessengine-0.1.3.tar.gz (12.7 MB view details)

Uploaded Source

Built Distribution

chessengine-0.1.3-py3-none-any.whl (9.9 MB view details)

Uploaded Python 3

File details

Details for the file chessengine-0.1.3.tar.gz.

File metadata

  • Download URL: chessengine-0.1.3.tar.gz
  • Upload date:
  • Size: 12.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.2

File hashes

Hashes for chessengine-0.1.3.tar.gz
Algorithm Hash digest
SHA256 f441290566aea389b6c85fef32f2ed2033d4c6376a407844f407779a945d0e8f
MD5 53f431f26cef57e89bc2b87b839674c9
BLAKE2b-256 7262df6e36e01ab1d743f4e146b107097f7f42acf0e70ece0ee3d6a95891d7d1

See more details on using hashes here.

File details

Details for the file chessengine-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: chessengine-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 9.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.2

File hashes

Hashes for chessengine-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 88b771807106ffbdc2958a0254d319c709a2c24d0d430af7f769d4c7eff4b3c8
MD5 aae8dfefa104a6ca156b5ae4027358a8
BLAKE2b-256 ce248b57ecae12346f0e03ddb17e7a13a4ed0c170ca71a19cf3aea1be8d37ebe

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page