Imported from SrMateos/my-bingo-mixer (
AGENTS.md). Install upstream withnpx skills add SrMateos/my-bingo-mixer. Copyright stays with the author.
AGENTS.md
This file helps AI coding agents become productive quickly in this repository.
Project Snapshot
- Stack: React 19 + TypeScript + Vite + Tailwind CSS v4
- Runtime requirement: Node.js 22+
- Entry point: src/main.tsx
- App shell: src/App.tsx
Mandatory Validation Before Finishing Changes
Run these from repo root:
npm run lint
npm run build
npm run test
Local Development
- Install deps:
npm install - Start dev server:
npm run dev(default local URL: http://localhost:5173/) - Production bundle output:
dist/
Architecture Map
- UI components: src/components/
- Game state and persistence: src/hooks/useBingoGame.ts
- Pure bingo logic and win detection: src/utils/bingoLogic.ts
- Core tests: src/utils/bingoLogic.test.ts
- Questions dataset: src/data/questions.ts
- Shared domain types: src/types/index.ts
Repo-Specific Conventions
- Prefer keeping game rules in pure utilities under src/utils/, not inside UI components.
- Keep UI state orchestration inside src/hooks/useBingoGame.ts.
- Preserve localStorage compatibility:
STORAGE_KEY/STORAGE_VERSIONbehavior in src/hooks/useBingoGame.ts. - Maintain free-space center behavior and line checks validated by src/utils/bingoLogic.test.ts.
Existing Agent Customizations (Reuse First)
- Instructions:
- Prompts:
- Custom agents:
Documentation (Link Instead of Duplicating)
- Main overview and quickstart: README.md
- Workshop navigation: workshop/GUIDE.md
- Setup/context-engineering flow: workshop/01-setup.md
- Contribution policy: CONTRIBUTING.md
Common Pitfalls
- Do not break center free-space semantics (
index 12) in bingo board generation. - Do not move win-detection logic into components; keep it testable in utilities.
- If changing state shape in storage, bump version and keep migration/validation safe.