Chessnut is a simple chess board model written in Python. Chessnut is not a chess engine – it has no AI to play games, and it has no GUI. It is a simple package that can import/export games in Forsyth-Edwards Notation (FEN), generate a list of legal moves for the current board position, intelligently validate & apply moves (including en passant, castling, etc.), and keep track of the game with a history of both moves and corresponding FEN representation.
Chessnut is not written for speed, it is written for simplicity (there are only two real classes, and only about 200 lines of code). By adding a custom move evaluation function, Chessnut could be used as a chess engine. The simplicity of the model lends itself well to studying the construction of a chess engine without worrying about implementing a chess model, or to easily find the set of legal moves for either player on a particular chess board for use in conjunction with another chess application.
Raw data
{
"_id": null,
"home_page": "https://github.com/cgearhart/Chessnut",
"name": "Chessnut",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "chess",
"author": "Chris Gearhart",
"author_email": "chris@gearley.com",
"download_url": "https://files.pythonhosted.org/packages/e5/54/ff05eb5403373d28754d2f8175cfc88f669a6364f7fed67385ba1dcc9d62/chessnut-0.4.1.tar.gz",
"platform": null,
"description": "Chessnut is a simple chess board model written in Python. Chessnut is not a chess engine \u2013 it has no AI to play games, and it has no GUI. It is a simple package that can import/export games in Forsyth-Edwards Notation (FEN), generate a list of legal moves for the current board position, intelligently validate & apply moves (including en passant, castling, etc.), and keep track of the game with a history of both moves and corresponding FEN representation.\n\nChessnut is not written for speed, it is written for simplicity (there are only two real classes, and only about 200 lines of code). By adding a custom move evaluation function, Chessnut could be used as a chess engine. The simplicity of the model lends itself well to studying the construction of a chess engine without worrying about implementing a chess model, or to easily find the set of legal moves for either player on a particular chess board for use in conjunction with another chess application.\n",
"bugtrack_url": null,
"license": "UNLICENSE",
"summary": "A basic chess model to imports/export FEN & finds moves.",
"version": "0.4.1",
"project_urls": {
"Homepage": "https://github.com/cgearhart/Chessnut"
},
"split_keywords": [
"chess"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4384c8078b302aba6225614a4893824b661fdaeb76514870fac2cf0767da0391",
"md5": "fa1ed0784d5a638ac9823a588150aabb",
"sha256": "0c65f19e4e88a40a0372d646521754e44dd97be017e0814029ae42566bd3f7ea"
},
"downloads": -1,
"filename": "Chessnut-0.4.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fa1ed0784d5a638ac9823a588150aabb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 13644,
"upload_time": "2024-11-28T03:24:10",
"upload_time_iso_8601": "2024-11-28T03:24:10.370773Z",
"url": "https://files.pythonhosted.org/packages/43/84/c8078b302aba6225614a4893824b661fdaeb76514870fac2cf0767da0391/Chessnut-0.4.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e554ff05eb5403373d28754d2f8175cfc88f669a6364f7fed67385ba1dcc9d62",
"md5": "02319383178cdbf340f553c231ae07b3",
"sha256": "033fd120eca1b0ebb0b48236df95d3e30e791cf52c4c7cd7f29a71b6a0dd7c85"
},
"downloads": -1,
"filename": "chessnut-0.4.1.tar.gz",
"has_sig": false,
"md5_digest": "02319383178cdbf340f553c231ae07b3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13776,
"upload_time": "2024-11-28T03:24:11",
"upload_time_iso_8601": "2024-11-28T03:24:11.560445Z",
"url": "https://files.pythonhosted.org/packages/e5/54/ff05eb5403373d28754d2f8175cfc88f669a6364f7fed67385ba1dcc9d62/chessnut-0.4.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-28 03:24:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "cgearhart",
"github_project": "Chessnut",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "coverage",
"specs": [
[
"==",
"3.7"
]
]
}
],
"lcname": "chessnut"
}