{"id":15170004,"url":"https://github.com/siilsy/chess","last_synced_at":"2025-10-13T23:32:09.915Z","repository":{"id":253259825,"uuid":"842958656","full_name":"Siilsy/Chess","owner":"Siilsy","description":"A simple chess game","archived":false,"fork":false,"pushed_at":"2024-11-19T20:58:31.000Z","size":39,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-16T20:36:22.846Z","etag":null,"topics":["chess-engine","chess-game","handmade","micropython","numworks","numworks-game","numworks-python"],"latest_commit_sha":null,"homepage":"","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/Siilsy.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":"2024-08-15T13:28:56.000Z","updated_at":"2024-11-19T20:58:35.000Z","dependencies_parsed_at":"2024-12-25T12:21:27.312Z","dependency_job_id":null,"html_url":"https://github.com/Siilsy/Chess","commit_stats":{"total_commits":7,"total_committers":1,"mean_commits":7.0,"dds":0.0,"last_synced_commit":"67b12209df8717c7205b952b7621ddb19c34399e"},"previous_names":["siilsy/chess"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siilsy%2FChess","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siilsy%2FChess/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siilsy%2FChess/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siilsy%2FChess/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Siilsy","download_url":"https://codeload.github.com/Siilsy/Chess/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253995207,"owners_count":21996621,"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":["chess-engine","chess-game","handmade","micropython","numworks","numworks-game","numworks-python"],"created_at":"2024-09-27T08:00:18.502Z","updated_at":"2025-10-13T23:32:04.897Z","avatar_url":"https://github.com/Siilsy.png","language":"Python","readme":"# ♟️ Chess\nA cool chess game that you can play with friends or alone against a robot.\n\n## ⌨️ Inputs\nTo move your selection square, use the dedicated directional arrows.\n\nTo select a square, press the 'OK' or 'EXE' button. First, select the piece you want to move, and then select the destination square.\n\nTo give up, press the 'Shift' button. To request a draw, press the 'Alpha' button. After either of these inputs, a 3-second timer will start, allowing you to cancel if you change your mind.\n##\n\n## 📜 Rules\nAll classic chess rules are included, so check the rules online if you're not familiar with them!\n##\n\n## ℹ️ Information\nIf you select a piece but cannot see the possible moves, it means the move is illegal and cannot be performed.\n\nThe way to promote a piece is unique and straightforward to understand. I’m sure you’ll get it, though it might be surprising at first.\n\nWhen you select a piece, you will see all its possible moves, helping you to better visualize your options.\n##\n\n## 🖥️ Requirements\nThis program is coded in MicroPython specifically for the NumWorks calculator, but it should work on a computer if you modify the module to be compatible with Python. However, you’ll also need to adjust the size of the squares to fit your screen; otherwise, the game may be difficult to play. Unfortunately, it won't work on the NumWorks site, though I'm not sure why.\n##\n\n## 💬 Language\nIt was coded on a NumWorks calculator in MicroPython.\n##\n\n## 🛠️ Details\nI'm sorry for the disappointment, but the AI for the robot only plays random moves. If I had more space, I might have implemented a better AI. Maybe next time, why not?\n\nYou can adjust the timer duration by modifying the code at line 406. Change the value (currently set to 600 seconds) to allow 10 minutes per player. Don't forget to convert the time to seconds!\n\nYou can also set the AI to play as a specific side. To do this, modify line 17. If you’re playing with a friend, remove all AI controls, but if you want to play as black, leave the AI set to play the first turn by entering '1'.\n\nThe function to request a draw is currently disabled because the NumWorks calculator doesn't have enough memory to handle it. The code is present but commented out, so if you're using a computer, you can re-enable this function in a real environment (not on the NumWorks site). The same goes for functionalities like detecting a draw by repetition, insufficient material, or the \"50-move rule.\"\n\nUnfortunately, the interface is in French, but there’s not much text, so it should be easy to understand.\n\nThis project was started on May 17, 2023, and finished on August 15, 2024 (though I didn't work on it continuously for 15 months, of course).\n##\n\n#\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsiilsy%2Fchess","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsiilsy%2Fchess","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsiilsy%2Fchess/lists"}