{"id":16133932,"url":"https://github.com/initialposition/cheddarshredder","last_synced_at":"2025-04-06T15:46:28.559Z","repository":{"id":113121586,"uuid":"355595422","full_name":"InitialPosition/CheddarShredder","owner":"InitialPosition","description":"An iterative alpha beta based python chess engine with UCI capabilities","archived":false,"fork":false,"pushed_at":"2022-03-31T13:06:38.000Z","size":22,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-12T21:46:22.202Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/InitialPosition.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-07T15:30:07.000Z","updated_at":"2022-03-31T13:06:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"35c6a623-b5b9-42fb-ba8c-12329ce927ef","html_url":"https://github.com/InitialPosition/CheddarShredder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InitialPosition%2FCheddarShredder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InitialPosition%2FCheddarShredder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InitialPosition%2FCheddarShredder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InitialPosition%2FCheddarShredder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InitialPosition","download_url":"https://codeload.github.com/InitialPosition/CheddarShredder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247508891,"owners_count":20950230,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-09T22:46:38.584Z","updated_at":"2025-04-06T15:46:28.532Z","avatar_url":"https://github.com/InitialPosition.png","language":"Python","readme":"# CheddarShredder\n_the best opening is horse_\n\n## Content\n1. Introduction\n2. Functions\n3. Installation\n4. Roadmap\n\n## Introduction\nCheddarShredder is a python based iterative alpha beta search based chess engine. It can run in a terminal or in any UCI compatible chess GUI.\n\n## Functions\n- Works in terminal and UCI compatible chess GUIs\n- Varies strength based on time left\n- sometimes wins\n\n## Installation\n1. Clone this repository to your local hard drive.\n2. Make sure Python 3 is installed. You can check by typing `python3 --version` into your terminal. If a string containing a version number is displayed, continue. Otherwise, install Python 3 from the [OFFICIAL WEBSITE](https://www.python.org/downloads).\n3. Create a virtual python environment by typing `python3 -m venv \u003ctarget folder\u003e` into your terminal and switch to it using `source \u003ctarget folder\u003e/bin/activate`.\n4. Install the required packages by running `python3 -m pip install -r requirements.txt` while the virtual environment is active.\n5. To launch the terminal version of CheddarShredder, use the command `python3 main.py`.\n6. If you want to use the engine in a UCI compatible chess GUI, select UCI.py as the engine.\n\n## Roadmap\n- [ ] Fix UCI\n\nThe current UCI support is a quickly hacked together mess. It currently supports a bare minimum of commands to work with lichess and doesn't give any live analysis updates. This should be fixed as soon as possible.\n- [ ] Improve search algorithm\n\nThe current search algorithm uses move ordering to speed up alpha beta pruning but could be vastly improved by using hash tables for already computed evaluations. The evaluation function itself is also in a very early state, only considering material counts and basic piece positioning. Things like pawn structures, traps and endgame scenarios should definitely be included at some point.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finitialposition%2Fcheddarshredder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finitialposition%2Fcheddarshredder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finitialposition%2Fcheddarshredder/lists"}