{"id":24396774,"url":"https://github.com/boehnen/openchess-rs","last_synced_at":"2026-02-13T12:08:31.352Z","repository":{"id":271789809,"uuid":"914564567","full_name":"boehnen/openchess-rs","owner":"boehnen","description":"A revival of https://github.com/mengistristen/openchess written in Rust","archived":false,"fork":false,"pushed_at":"2025-01-31T00:20:50.000Z","size":44,"stargazers_count":2,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-10T03:05:54.991Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","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/boehnen.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,"zenodo":null}},"created_at":"2025-01-09T21:04:03.000Z","updated_at":"2025-01-31T00:20:51.000Z","dependencies_parsed_at":"2025-01-09T22:37:48.118Z","dependency_job_id":"e138df63-edf6-4b4a-bed6-3f0162ec2e88","html_url":"https://github.com/boehnen/openchess-rs","commit_stats":null,"previous_names":["boehnen/openchess-rs"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/boehnen/openchess-rs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boehnen%2Fopenchess-rs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boehnen%2Fopenchess-rs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boehnen%2Fopenchess-rs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boehnen%2Fopenchess-rs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boehnen","download_url":"https://codeload.github.com/boehnen/openchess-rs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boehnen%2Fopenchess-rs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29404963,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":"2025-01-19T21:58:05.500Z","updated_at":"2026-02-13T12:08:31.325Z","avatar_url":"https://github.com/boehnen.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Public API Usage\nOpenChess is a RESTful API that generates chessboard images in SVG format based on the board position provided in FEN notation.\n\n### Example Request\nTo use the API, send a GET request with the desired board position in FEN notation using the fen query parameter:\n```\nhttps://chess.boehnen.net/chess/v1?fen=r1bqkbnr/pppppppp/2n5/8/8/2N5/PPPPPPPP/R1BQKBNR\n```\n\n### Response\nThe `200 OK` response is an SVG image of the chessboard representing the specified FEN position. The image can be saved or embedded in a webpage, and scaled to any desired resolution.\n\n### Query Parameters\nThe API supports the following query parameters:\n\n| Parameter Name | Optionality | Description |\n|----------------|-------------|----------------------------------------------| \n|'fen' | Required | The board position in FEN notation. |\n| 'theme' | Optional | Specify a board theme (`classic` or `modern`). |\n| 'rotation' | Optional | Rotate the board in 90 degree increments (`0`, `90`, `180` or `270`). | \n| 'labels' | Optional | Include coordinate labels on the board (`true` or `false`). |\n\n### FEN\n```\nr1bqkbnr/pppppppp/2n5/8/8/2N5/PPPPPPPP/R1BQKBNR\n```\nThis represents the following chess position:\n- Black knight on `c6`\n- White knight on `c3`\n- Pawns in their initial positions.\n\nThe FEN string can be simplified to include only the piece positions, omitting the following components:\n- Active player (w or b)\n- Castling availability (KQkq)\n- En passant target square (e.g., e3)\n- Halfmove clock and fullmove number (0 1)\nWhile these components can still be included in the fen query, they are ignored by the API as they are not relevant to rendering the chessboard.\n\n### Example of saving the response:\n``` bash\ncurl -X GET 'https://chess.boehnen.net/chess/v1?fen=r1bqkbnr/pppppppp/2n5/8/8/2N5/PPPPPPPP/R1BQKBNR' -o board.svg\n```\n\n# Running the OpenChess API\nThe OpenChess API is implemented in Rust. To pull the code and run the API locally, follow these steps:\n\n### Prerequisites\nEnsure the following are installed on your system:\n- Rust and Cargo: Install Rust via [rustup](https://rustup.rs/).\n- Git: Install Git to clone the repository.\n\n### Clone the Repository\nUse Git to clone the API repository:\n``` bash\ngit clone https://github.com/boehnen/openchess-rs.git\n```\n``` bash\ncd openchess-rs\n```\n\n### Build and Run the API\nBuild the project: \n``` bash\ncargo build --release\n```\n\nRun the API:\n``` bash\ncargo run --release\n```\nBy default, the API will start on `http://127.0.0.1:8080`. You can adjust the port or host in the configuration file or by setting environment variables.\n\n### Test the API\nOnce the API is running, test it by hitting the endpoint:\n```\nhttp://127.0.0.1:8080/chess/v1?fen=r1bqkbnr/pppppppp/2n5/8/8/2N5/PPPPPPPP/R1BQKBNR\n```\nYou should receive an SVG image of the chessboard as a response.\n\n# Contributing\n- Found a bug? Have an idea for improvement? [Open an issue](https://github.com/boehnen/openchess-rs/issues) to let us know.\n- Want to contribute code? Fork the repository, make your changes, and [submit a pull request](https://github.com/boehnen/openchess-rs/pulls).\n- Have a feature in mind? [Request it](https://github.com/boehnen/openchess-rs/issues) through our issue tracker.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboehnen%2Fopenchess-rs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboehnen%2Fopenchess-rs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboehnen%2Fopenchess-rs/lists"}