- CLAUDE.md Track A: voeg stap 1 (branch aanmaken) toe, splits stap 6 (commit, geen push) af, voeg stap 7-8 (herhaal / push+PR bij lege queue) - Hardstop Push-regel: verduidelijkt dat commits lokaal accumuleren per taak; push pas bij lege queue of expliciete gebruikersbevestiging - docs/runbooks/branch-and-commit.md: nieuwe subsectie "Agent-batch flow" met tabel (run-start / na taak / queue leeg) en single-task edge case
4 KiB
4 KiB
| title | status | audience | language | last_updated | |
|---|---|---|---|---|---|
| CLAUDE.md — Scrum4Me | active |
|
nl | 2026-05-03 |
CLAUDE.md — Scrum4Me
Desktop-first Scrum-app voor solo developers en kleine teams. Hiërarchie: product → PBI → story → taak. Zie README.md voor setup.
Orientatie
| Bestand | Waarvoor |
|---|---|
docs/INDEX.md |
Gegenereerde index van alle docs — begin hier |
docs/specs/functional.md |
Acceptatiecriteria, user flows |
docs/architecture.md |
Breadcrumb → 6 topische arch-bestanden |
docs/backlog/index.md |
Implementatievolgorde, "done when"-criteria |
docs/api/rest-contract.md |
REST API contract voor Claude Code |
docs/design/styling.md |
Lees vóór elk component — MD3-tokens, shadcn |
docs/plans/<key>-*.md |
Implementatieplan per milestone |
Hoe werk vinden
Track A — MCP (aanbevolen):
- Branch aanmaken:
git checkout -b feat/<batch-slug>— nog geengh pr create mcp__scrum4me__get_claude_context→ pak de next story- Voer taken uit in
sort_order; update status per taak - Lees het relevante patroon en styling vóór je begint
- Verifieer:
npm run lint && npm test && npm run build - Commit per laag:
git add -A && git commit— geengit push— zie docs/runbooks/branch-and-commit.md - Herhaal stap 2–6 per story; branch blijft dezelfde
- Queue leeg →
git push -u origin <branch>+gh pr create
Track B — manueel:
- Lees taak in
docs/backlog/index.md - Zoek spec in
docs/specs/functional.md - Lees patroon + styling → bouw → verifieer → vraag bevestiging → commit
Volledige MCP-tool documentatie: docs/runbooks/mcp-integration.md
Hardstop regels
- Styling: nooit
bg-blue-500; altijd MD3-tokens (bg-primary,bg-status-done, …) - UI: gebruik
@base-ui/reactmetrender-prop, niet RadixasChild - Push: commits accumuleren lokaal per taak (
git add -A && git commit); push + PR pas bij lege queue of na expliciete gebruikersbevestiging — zie branch-and-commit.md - Demo: drie lagen — proxy.ts + server action + UI disabled knop
- Enum: DB UPPER_SNAKE ↔ API lowercase — uitsluitend via
lib/task-status.ts - Foutcodes: 400 = parse-fout, 422 = Zod-validatie, 403 = demo-token
- Server/client grens:
*-server.tsbevat DB/node-only; nooit importeren in client component - Deployment:
npm run lint && npm test && npm run buildvóór elke PR
Stack
| Laag | Technologie |
|---|---|
| Framework | Next.js 16 (App Router) + React 19 |
| Taal | TypeScript strict |
| Styling | Tailwind CSS + shadcn/ui + MD3 via app/styles/theme.css |
| State | Zustand + dnd-kit |
| DB | Prisma v7 + PostgreSQL (Neon) |
| Auth | iron-session + bcryptjs |
| Utilities | Zod, Sonner, Sharp, Vercel Analytics |
Patterns quickref
| Patroon | Bestand |
|---|---|
| iron-session | docs/patterns/iron-session.md |
| Prisma singleton | docs/patterns/prisma-client.md |
| Server Action (auth + Zod) | docs/patterns/server-action.md |
| Route Handler (REST) | docs/patterns/route-handler.md |
| Zustand optimistic update | docs/patterns/zustand-optimistic.md |
| Float sort_order / drag-and-drop | docs/patterns/sort-order.md |
| Proxy / route protection | docs/patterns/proxy.md |
| QR-pairing | docs/patterns/qr-login.md |
| Claude ↔ user vraagkanaal | docs/patterns/claude-question-channel.md |
| Entity Dialog (verplicht) | docs/patterns/dialog.md |
Env vars
DATABASE_URL="" # postgresql://...
DIRECT_URL="" # pooler-bypass voor LISTEN/NOTIFY
SESSION_SECRET="" # min 32 chars
CRON_SECRET="" # Bearer-secret /api/cron/*
Volledig schema: lib/env.ts. Canonieke lijst: .env.example.
Scrum-terminologie
PBI (niet: Feature/Epic) · Story (niet: Ticket) · Sprint Goal (niet: Objective)
Verificatie
npm run lint && npm test && npm run build