{"id":19945568,"url":"https://github.com/odilson-dev/chess-ruby","last_synced_at":"2025-09-11T17:43:13.474Z","repository":{"id":204796276,"uuid":"711998570","full_name":"odilson-dev/chess-ruby","owner":"odilson-dev","description":"Chess is a board game for two players, called White and Black, each controlling an army of chess pieces, with the objective to checkmate the opponent's king.","archived":false,"fork":false,"pushed_at":"2024-05-24T22:47:32.000Z","size":204,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-23T20:52:42.973Z","etag":null,"topics":["chessgame","final-project","ruby","theodinproject"],"latest_commit_sha":null,"homepage":"https://replit.com/@odilsonjs/Chess-Ruby-Final-Project?v=1","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/odilson-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-10-30T15:36:52.000Z","updated_at":"2024-05-24T22:47:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"5970ee5b-f320-4895-bb9a-7b9ba1ce996e","html_url":"https://github.com/odilson-dev/chess-ruby","commit_stats":null,"previous_names":["odilsonjs/chess-ruby-final-project","odilsoncode/chess-ruby","odilson-dev/chess-ruby"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/odilson-dev%2Fchess-ruby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/odilson-dev%2Fchess-ruby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/odilson-dev%2Fchess-ruby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/odilson-dev%2Fchess-ruby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/odilson-dev","download_url":"https://codeload.github.com/odilson-dev/chess-ruby/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241374515,"owners_count":19952544,"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":["chessgame","final-project","ruby","theodinproject"],"created_at":"2024-11-13T00:26:02.122Z","updated_at":"2025-03-01T13:44:29.577Z","avatar_url":"https://github.com/odilson-dev.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chess-Ruby-Final-Project\nChess is a board game for two players, called White and Black, each controlling an army of chess pieces, with the objective to checkmate the opponent's king.\n\n\n## Demo with AI\n\u003cimg src=\"gif/bandicam.gif\" alt=\"short chess game\" width=auto height=\"400px\"/\u003e\u003cbr\u003e\n\n\n# CLI Ruby Chess Game\nThis is the final project in the Ruby curriculum at [The Odin Project](https://www.theodinproject.com/lessons/ruby-ruby-final-project).\n\n## Play Online\nIf you want to play this chess game without installing it on your computer, you can play it online. Just click the run button at the top of the page. It will take a few seconds to load the dependencies and then the game menu will appear.\n\n## To Play\nRun ruby lib/main.rb\nPlay a 1-player or 2-player game (can save a game to load at a later time)\n\n## Running the tests\nTo run the entire test suite, run rspec\nTo run the tests for one file in the spec folder, run rspec spec/file_name.rb\nTo run the tests for one file in the lib folder, run rspec spec/lib/file_name.rb\nTo run the tests for one file in the pieces folder, run rspec spec/lib/pieces/file_name.rb\n\n\n## Reflections\n\nThis project was the most challenging and intricate one I've tackled so far. It was tough due to the extensive range of problems that required solving, spanning both depth and breadth. Integrating these diverse solutions in a coherent and adaptable manner posed its own difficulties. Managing the unnecessary bulk and outdated elements resulting from multiple experiments or implementations that needed modification due to unforeseen scenarios was quite a challenge.\n\nWhile I invested considerable thought in planning the overall design, it was during the actual implementation that many issues surfaced, ones that weren't apparent initially.\n\nI've realized the importance of maintaining modular systems; as the project expanded, the interconnected parts made even minor changes incredibly difficult. Additionally, adhering to rigorous testing practices proved essential for safe refactoring and making alterations.\n\nDespite the challenges, this project was incredibly rewarding, offering a wealth of lessons learned along the way.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fodilson-dev%2Fchess-ruby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fodilson-dev%2Fchess-ruby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fodilson-dev%2Fchess-ruby/lists"}