{"id":50944733,"url":"https://github.com/johnbwoodruff/pokemon-bracket","last_synced_at":"2026-06-17T18:35:19.179Z","repository":{"id":350729588,"uuid":"1208044938","full_name":"johnbwoodruff/pokemon-bracket","owner":"johnbwoodruff","description":"Determine your favorite pokemon, bracket style!","archived":false,"fork":false,"pushed_at":"2026-04-11T19:54:02.000Z","size":211,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-11T20:27:03.736Z","etag":null,"topics":["claude-code","pokemon","spec-driven-development"],"latest_commit_sha":null,"homepage":"https://pokemon-bracket.netlify.app/","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/johnbwoodruff.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-11T18:39:08.000Z","updated_at":"2026-04-11T19:54:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/johnbwoodruff/pokemon-bracket","commit_stats":null,"previous_names":["johnbwoodruff/pokemon-bracket"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/johnbwoodruff/pokemon-bracket","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnbwoodruff%2Fpokemon-bracket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnbwoodruff%2Fpokemon-bracket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnbwoodruff%2Fpokemon-bracket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnbwoodruff%2Fpokemon-bracket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johnbwoodruff","download_url":"https://codeload.github.com/johnbwoodruff/pokemon-bracket/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johnbwoodruff%2Fpokemon-bracket/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34461617,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-17T02:00:05.408Z","response_time":127,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["claude-code","pokemon","spec-driven-development"],"created_at":"2026-06-17T18:35:17.989Z","updated_at":"2026-06-17T18:35:19.152Z","avatar_url":"https://github.com/johnbwoodruff.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pokemon Bracket\n\n[![CI](https://github.com/johnbwoodruff/pokemon-bracket/actions/workflows/ci.yml/badge.svg)](https://github.com/johnbwoodruff/pokemon-bracket/actions/workflows/ci.yml)\n\nA web-based tournament bracket generator for Pokemon. Pick a category of Pokemon, choose a bracket size, and click through matchups to crown your champion. Supports single and double elimination formats with a responsive bracket view for desktop and mobile.\n\nEntirely client-side — no backend, no accounts. All Pokemon data comes from [PokeAPI](https://pokeapi.co/). Completed brackets can be exported as images or shared via URL.\n\n## Built With\n\n- [TanStack Start](https://tanstack.com/start) (SPA mode) + React 19\n- TypeScript\n- [Tailwind CSS v4](https://tailwindcss.com/) + [shadcn/ui](https://ui.shadcn.com/)\n- [Zustand](https://zustand.docs.pmnd.rs/) for state management\n- [Vitest](https://vitest.dev/) + Testing Library\n\n## Purpose\n\nMy son thought it would be fun to have a tournament-style bracket but for Pokemon. I'm sure there are already options out there, but I wanted to experiment more with lightweight spec-driven development. Normally I use [spec-kit](https://github.com/github/spec-kit) which I love but I wanted to experiment with not using a tool for it. I used [Claude Code](https://claude.com/product/claude-code) and my specs are located in the `./specs` directory.\n\nI would say my experiment was broadly successful, with only minor UI iterations for the most part. The specs and technical plan were detailed enough that there was little to no iterating needed from a functionality perspective. All in all, a fun little experiment to do in the evening while watching a show.\n\n## Getting Started\n\n```bash\nnpm install\nnpm run dev\n```\n\nThe dev server starts at [http://localhost:3000](http://localhost:3000).\n\n## Scripts\n\n| Command | Description |\n| --- | --- |\n| `npm run dev` | Start dev server |\n| `npm run build` | Production build |\n| `npm run test` | Run test suite |\n| `npm run lint` | TypeScript type checking |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnbwoodruff%2Fpokemon-bracket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohnbwoodruff%2Fpokemon-bracket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohnbwoodruff%2Fpokemon-bracket/lists"}