# chessy
A simple chess engine.
This is a learning project. It is much slower than other production-ready engines and may have bugs, but
feel free to contribute if you wish to.
## Features
- Minimal UCI support.
- Lichess integration (see [this repository](https://github.com/Guilherme-Vasconcelos/lichess-bot)).
## Getting started
1. Create a venv with `python -m venv .venv`. The exact Python required version can be found at
[pyproject.toml](./pyproject.toml).
2. Install [poetry](https://python-poetry.org/) and run `$ poetry install` to install dependencies.
3. Run it with `$ poetry run chessy` or manually with `$ .venv/bin/activate` followed by `$ python -m chessy.core`.
- If you are trying to debug some problem, you can use the `--debug` (`-d` for short) flag to increase log level: `$ poetry run chessy -d`.
## Planned features
### Short term:
- Improve move evaluation and search.
- Be able to process at least depth 8 within a reasonable time.
- Quiescence search (as soon as we get some performance improvements - not right now because it will slow down things too much).
### Long term:
- Advanced UCI support
- Adapt playstyle according to `wtime` and `btime`.
- Ponder.
- Report more info (e.g. `seldepth`).
- Maybe support customization options.
## Development utils
- If you're using VSCode, we have a [.vscode](./.vscode) with recommended extensions / settings,
and launch profiles.
- Alternatively, use [tools/format_lint_test.bash](./tools/format_lint_test.bash) to run all available lints.
Check the script source code if you want to run any of these lints separately.
## License
chessy is licensed under the GNU Affero General Public License, either version 3 or any later versions
at your choice. See [LICENSE.txt](./LICENSE.txt) for more details.
Raw data
{
"_id": null,
"home_page": "https://github.com/Guilherme-Vasconcelos/chessy",
"name": "chessy",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.11,<4.0",
"maintainer_email": "",
"keywords": "chess",
"author": "Guilherme Vasconcelos",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/6a/36/cd2ed404c6cb4629bf50bb137797363f9ca235e66a6b3f91d3a4e56450d6/chessy-0.2.3.tar.gz",
"platform": null,
"description": "# chessy\nA simple chess engine.\n\nThis is a learning project. It is much slower than other production-ready engines and may have bugs, but\nfeel free to contribute if you wish to.\n\n## Features\n\n- Minimal UCI support.\n- Lichess integration (see [this repository](https://github.com/Guilherme-Vasconcelos/lichess-bot)).\n\n## Getting started\n1. Create a venv with `python -m venv .venv`. The exact Python required version can be found at\n[pyproject.toml](./pyproject.toml).\n2. Install [poetry](https://python-poetry.org/) and run `$ poetry install` to install dependencies.\n3. Run it with `$ poetry run chessy` or manually with `$ .venv/bin/activate` followed by `$ python -m chessy.core`.\n - If you are trying to debug some problem, you can use the `--debug` (`-d` for short) flag to increase log level: `$ poetry run chessy -d`.\n\n## Planned features\n\n### Short term:\n\n- Improve move evaluation and search.\n - Be able to process at least depth 8 within a reasonable time.\n - Quiescence search (as soon as we get some performance improvements - not right now because it will slow down things too much).\n\n### Long term:\n\n- Advanced UCI support\n - Adapt playstyle according to `wtime` and `btime`.\n - Ponder.\n - Report more info (e.g. `seldepth`).\n - Maybe support customization options.\n\n## Development utils\n- If you're using VSCode, we have a [.vscode](./.vscode) with recommended extensions / settings,\nand launch profiles.\n- Alternatively, use [tools/format_lint_test.bash](./tools/format_lint_test.bash) to run all available lints.\nCheck the script source code if you want to run any of these lints separately.\n\n## License\nchessy is licensed under the GNU Affero General Public License, either version 3 or any later versions\nat your choice. See [LICENSE.txt](./LICENSE.txt) for more details.\n",
"bugtrack_url": null,
"license": "AGPL-3.0-or-later",
"summary": "A simple chess engine",
"version": "0.2.3",
"project_urls": {
"Homepage": "https://github.com/Guilherme-Vasconcelos/chessy",
"Repository": "https://github.com/Guilherme-Vasconcelos/chessy"
},
"split_keywords": [
"chess"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b0b16f9cf2fa0c0c6d30023f6f340ca1d325bfe634fefcb3260bbcaa6492b0df",
"md5": "2d5a64d55bc086deb21a15a990df79b2",
"sha256": "11425630a26e8fd7456d862ec142a076bc152ad34d8c7208eb7c75fd70d9b432"
},
"downloads": -1,
"filename": "chessy-0.2.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2d5a64d55bc086deb21a15a990df79b2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11,<4.0",
"size": 55551,
"upload_time": "2023-10-29T09:00:20",
"upload_time_iso_8601": "2023-10-29T09:00:20.373757Z",
"url": "https://files.pythonhosted.org/packages/b0/b1/6f9cf2fa0c0c6d30023f6f340ca1d325bfe634fefcb3260bbcaa6492b0df/chessy-0.2.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6a36cd2ed404c6cb4629bf50bb137797363f9ca235e66a6b3f91d3a4e56450d6",
"md5": "1b90946ef348eac8ed0c66ebe8fb0c01",
"sha256": "a38d5872a7a1fe3678df7f5b05323674fcde199965fbe81feb33e9df8b0a496e"
},
"downloads": -1,
"filename": "chessy-0.2.3.tar.gz",
"has_sig": false,
"md5_digest": "1b90946ef348eac8ed0c66ebe8fb0c01",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11,<4.0",
"size": 36741,
"upload_time": "2023-10-29T09:00:21",
"upload_time_iso_8601": "2023-10-29T09:00:21.831547Z",
"url": "https://files.pythonhosted.org/packages/6a/36/cd2ed404c6cb4629bf50bb137797363f9ca235e66a6b3f91d3a4e56450d6/chessy-0.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-10-29 09:00:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Guilherme-Vasconcelos",
"github_project": "chessy",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "chessy"
}