{"id":15600569,"url":"https://github.com/gbtami/chessgroundx","last_synced_at":"2025-04-05T09:07:23.758Z","repository":{"id":34294033,"uuid":"175174495","full_name":"gbtami/chessgroundx","owner":"gbtami","description":"Fork of https://github.com/lichess-org/chessground Supports boards up to 16x16","archived":false,"fork":false,"pushed_at":"2024-12-03T11:29:17.000Z","size":12402,"stargazers_count":41,"open_issues_count":0,"forks_count":17,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-29T08:07:32.783Z","etag":null,"topics":["board","chess","lichess","typescript","ui"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gbtami.png","metadata":{"files":{"readme":"README-X.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"patreon":"pychess","custom":["https://paypal.me/gbtami"]}},"created_at":"2019-03-12T09:11:15.000Z","updated_at":"2025-01-13T05:24:56.000Z","dependencies_parsed_at":"2024-10-12T02:00:52.724Z","dependency_job_id":"d48fff1d-39be-4274-9c06-c1035e677ef8","html_url":"https://github.com/gbtami/chessgroundx","commit_stats":{"total_commits":1747,"total_committers":37,"mean_commits":47.21621621621622,"dds":0.3989696622781912,"last_synced_commit":"6b89050417bc2e16571886c80adec8b5f2aea5be"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbtami%2Fchessgroundx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbtami%2Fchessgroundx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbtami%2Fchessgroundx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbtami%2Fchessgroundx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gbtami","download_url":"https://codeload.github.com/gbtami/chessgroundx/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246668863,"owners_count":20814742,"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":["board","chess","lichess","typescript","ui"],"created_at":"2024-10-03T02:04:26.795Z","updated_at":"2025-04-05T09:07:23.714Z","avatar_url":"https://github.com/gbtami.png","language":"TypeScript","funding_links":["https://patreon.com/pychess","https://paypal.me/gbtami"],"categories":[],"sub_categories":[],"readme":"# Main differences compared to upstream chessground\n\n- Support board up to 16x16.\n- Piece roles are NOT piece names like `pawn`, `knight`, `bishop`, `rook`, `queen`, `king`,\n  but letter-based like `p-piece`, `n-piece`, `b-piece`, `r-piece`, `q-piece`, `k-piece` etc.\n  They are in `*-piece` format where `*` is the corresponding piece letter used in FEN.\n  Also in variants where promoted pieces need their own role (like Shogi),\n  signified by prefixing with a '+' in the FEN,\n  they are prefixed with `p` like `pr-piece` for Shogi's Dragon (promoted Rook).\n  Example [shogi.css](https://github.com/gbtami/pychess-variants/blob/master/static/piece/shogi/shogi.css)\n- In Shogi-like variants where piece images are differentiated with directions (instead of color),\n  you can use the `ally`/`enemy` classes instead of `white`/`black` in CSS files.\n  This can also be seen in the aforementioned shogi.css file.\n- Pockets are integrated as a significant part of the library and are rendered for drop variant `mini` boards.\n\n# API Enhancement\n\n```\n// perform a move programmatically\nmove(orig: cg.Orig, dest: cg.Key): void;\n```\n\nThe `move` method supports drop origin in addition to the traditional square origin. Signified by an uppercase letter followed by an `@`, meaning a piece of that letter is being dropped on `dest`. For example, `chessground.move('R@', 'c2')` means the turn color dropping a rook from their pocket onto the square c2.\n\nBe careful not to use a lowercase letter for the piece though. The `@` is also used to signify the 16th rank in case your variant goes that big. Using lowercase letter like `a@` will mean moving from the square a16 instead of dropping the A piece.\n\n# New Config types\n\n```\npremovable?: {\n  premoveFunc?: cg.Premove;\n  predropFunc?: cg.Predrop;\n}\n```\n\nPremove and predrop functions. Takes the game's board state and the square being premoved, or piece being predropped, and returns a list of squares eligible for premoving. Defaults to orthodox chess behavior. Some variants, particularly those on [PyChess](https://www.pychess.org), have their premove functions implemented in `premove.ts` and `predrop.ts`.\n\n```\ndimensions?: cg.BoardDimensions;\n```\n\nThe dimensions of the board: width and height. In the format `{ width: number, height: number }`. The default is `{ width: 8, height: 8 }`, representing an 8x8 board.\n\n```\n`variant?: cg.Variant;`\n```\n\nThe name of the variant being displayed. Used for determining premove destinations. All variants in [Pychess](https://www.pychess.org) are supported. The default is `'chess'`.\n\n```\nchess960?: boolean;\n```\n\nWhether the game being represented is a [960](https://lichess.org/variant/chess960) game. Used for 960-style castling premove destinations.\n\n```\nnotation?: cg.Notation;\n```\n\nNotation style for the coordinates. Supports non-algebraic styles like Xiangqi showing numbers on top and bottom, etc. Also supports some native scripts like Chinese/Kanji and Thai characters.\n\n```\nkingRoles?: cg.Role[];\n```\n\nThe role(s) of the king piece. Pieces of these roles will be marked for check. By default, only the `k-piece` (the piece with the letter K, like Chess King) is marked.\n\n```\npocketRoles?: cg.PocketRoles;\n```\n\nThe roles of the piece in each side's pocket. In the format `{ white: cg.Role[], black: cg.Role[] }`. Used for internal pocket support.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgbtami%2Fchessgroundx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgbtami%2Fchessgroundx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgbtami%2Fchessgroundx/lists"}