{"id":18774215,"url":"https://github.com/leny/bowlstats","last_synced_at":"2026-01-31T10:34:33.740Z","repository":{"id":143462486,"uuid":"607323213","full_name":"leny/bowlstats","owner":"leny","description":"🎳 A small bowling stats tracker","archived":false,"fork":false,"pushed_at":"2024-09-26T11:07:52.000Z","size":4386,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-11T02:05:28.886Z","etag":null,"topics":["react","reactjs"],"latest_commit_sha":null,"homepage":"https://leny.me/bowlstats/","language":"TypeScript","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/leny.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,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-02-27T19:01:19.000Z","updated_at":"2024-12-08T21:17:38.000Z","dependencies_parsed_at":"2023-10-15T12:35:29.052Z","dependency_job_id":"fef1680f-8991-433a-81ed-7e814eb7a2af","html_url":"https://github.com/leny/bowlstats","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/leny/bowlstats","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leny%2Fbowlstats","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leny%2Fbowlstats/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leny%2Fbowlstats/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leny%2Fbowlstats/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leny","download_url":"https://codeload.github.com/leny/bowlstats/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leny%2Fbowlstats/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28938670,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T10:18:23.202Z","status":"ssl_error","status_checked_at":"2026-01-31T10:18:22.693Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["react","reactjs"],"created_at":"2024-11-07T19:37:44.898Z","updated_at":"2026-01-31T10:34:33.723Z","avatar_url":"https://github.com/leny.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# @leny/bowlstats\n\n\u003e 🎳 A small bowling stats tracker\n\n* * *\n\n## About\n\nA *pet-project* with **parcel** \u0026 **react** to track my _bowling_ scores \u0026 stats.\n\n## I like it! I want one too!\n\nIt's pretty easy, even if you're not a _skilled web developper_!\nJust **fork** the repository (search for the **fork** button around the top right of this page), and modify the two following files:\n\n- `data/params.json` to change the **title** \u0026 **subtitle** of the page (and add goals if you want to)\n- `data/scores.yaml` to encode _your_ scores (won't really be yours with _my scores_) - refer to the **Usage** section for more information about the scores format\n\nThen, everything should be okay.\nGo to the **settings/pages** section of the repository if you want to *fine tune* the configuration of the page.\n\n## Local install\n\nIf you want to customize the code, simply clone the repo, install the dependencies with `npm install`, then run the code with `npm run work`.\n\nThe rest is up to you: it's a simple _[react](https://react.dev/) one page app_, using [parcel](https://parceljs.org/) as builder, [bulma](https://bulma.io/) for the styles \u0026 [recharts](https://recharts.org/) for the graphs.\n\n## Usage (update scores)\n\n### Games\n\nScores are encoded in [YAML format](https://en.wikipedia.org/wiki/YAML) in file `data/scores.yaml`.\n\nYAML is pretty easy to update, and the format of data is kinda *self-explanatory*:\n\n```yaml\n---\ndate: 2023-03-15\nball: H13\noilPattern: Typical House Shot\ngames:\n  - frames: X, 81, 41, 1/, 8-, S81, 6-, S7-, 72, X9/\n  - frames: 9-, 61, 9-, 62, 42, 1-, 8/, 7-, 7/, 5-\n    note: An optional note about the game\n  - frames: 17, 9-, 1-, 32, 7-, -3, 9/, X, 62, -9\n  - ball: 14\n    frames: 43, -3, 63, -5, X, 9-, 72, 5-, X, 9-\n```\n\nThe `ball` entry specifies the weight of the ball. Prefix it with an `H` to indicate an _house ball_.\n\nThe `frames` entry specifies the frames of a game, separated by a comma (`,`).\nUse `X` for a *strike*, `/` for a *spare*, `S` for a *split*, `-` for a *miss* or `F` for a *foul*.\n\nYou can add a `note` entry to comment a game.\n\n### Leagues (in _beta_)\n\nYou can encode your league nights as part of your scores, like this:\n\n```yaml\n---\ndate: 2023-07-05\nball: 14\noilPattern: Typical House Shot\ngames:\n  - frames: 8-, 9-, 5/, 7-, 71, 9/, 6-, 7-, 8-, 7/X    \n  - frames: 9/, 71, 7-, X, 7/, 9/, X, -5, 72, S81    \n  - frames: 9/, 9/, 9-, X, 17, 9-, 4/, 9-, 7-, 9-\n    note: An optional note about the game\n  - frames: 8/, 8/, 81, 1/, S8-, 3/, 9/, 8/, 8-, 7/8    \n  - frames: X, 9-, X, 36, 9-, S71, --, 9-, 9/, 41    \n  - frames: 8-, 9-, S81, X, 9/, 9-, S62, 9/, 8/, 9/3\n  - frames: S7-, S8/, 35, S71, X, 7-, 61, 8-, X, 1/X\nleagues:\n  - name: Fantasy League 2023-2024\n    day: 2\n    team: My super team\n    vs: The other team\n    avg: 160\n    handicap: 36\n    games: 1, 4, 5\n    oilPatterns:\n    \t- Badger\n    \t- Taj Mahal\n    note: An optional note about the match\n```\n\n`leagues.games` are indexes (starting at `1`) of the days' games to use in named league.\n\n* * *\n\nFebruary 2023\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleny%2Fbowlstats","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleny%2Fbowlstats","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleny%2Fbowlstats/lists"}