Extracts playing_handicaps + strokes_per_hole into a single helper
used by both game_page and game_summary, instead of duplicating
the logic in each route.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Calculate course handicap per player (WHS formula) in game_summary
- Show Playing Handicaps card with HI, HC, and tee per player
- Mark stroke-receiving holes with accent dots in strokes and skins scorecards
- Add HC footer row to strokes scorecard
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Removed name="players" from checkboxes and replaced with a single
x-for block generating hidden inputs from selectedPlayers state,
ensuring correct submission regardless of active step.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
New step 3 shows a summary of all selections (format, carryover,
course, holes, players with HCP and tee) before submitting.
Also includes handicap in player query and tee tracking in Alpine state.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add Skins game format with optional carryover, mirroring BBB scoring pattern
- Add GolfCourseAPI integration for course search and import (httpx)
- Unwrap {"course": {}} API response envelope on import
- Add searchable course combobox and player filter to new game form
- Redirect to summary page after finishing a game
- Fix auth to allow registered users without a pending invitation
- Fix hardcoded BBB format in create_game; store carryover flag in DB
- Add game summary/scorecard view for completed games
- Add live games social stream to dashboard
- Add course name + subtitle to recent game cards
- Reorder nav: Home → Games → Admin → Profile
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- FastAPI + SQLite + Alpine.js + HTMX PWA for Bingo Bango Bongo golf scoring
- Passwordless magic link auth with email (aiosmtplib) and admin invite system
- Real-time score entry via WebSocket with drag-and-drop player ordering
- Course management with per-hole par and stroke index
- Scorecard with golf score markers (birdie, eagle, bogey, etc.)
- Two-step new game form with tee selection per player
- Dashboard with stats, live games social stream, and recent game history
- Game summary view (read-only scorecard with leaderboard)
- User profile pages with win stats
- PWA install support with generated PNG icons
- Admin panel for users, courses, games, and invitations
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>