GolfOps Platform

League ops without spreadsheet chaos.

Configure rules once, score live from the cart path, and close the week with a dashboard built for real league nights.

Build Snapshot

Score entry flow is built

Mobile match setup, hole-by-hole entry, review, and Supabase submit are in place.

Dashboard demo is live

Standings, games, money list, and ops views are already rendering against demo league data.

Main gap left

Score submissions do not automatically sync back into the live dashboard data model yet.

Core Apps

Three connected parts of the GolfOps workflow.

App 1

Score Entry

Mode
Mobile
Input
Fast Keys
Output
Review Card

Mobile-first scoring flow with matchup confirmation, substitute handling, and a clean review-before-submit experience.

  • Loads leagues and matches from Supabase with demo fallback.
  • Supports entry by hole, by player, and net pops views.
  • Submits scorecards into the current score-entry schema.
Open /score/

App 2

League Config

Ruleset builder
Roster + week setup
Supabase-ready payload

Rule builder and validation surface for shaping a league into one consistent payload before publish.

  • Designed to reduce config drift between apps.
  • Pairs with GolfOps SQL ingest functions.
  • Best treated as a prototype admin tool for now.
Open /admin

App 3

League Dashboard

Public
Standings + Games
Admin
Ops + Finalize

Live presentation layer for matchups, standings, proxy games, money list, and admin operations.

  • Hydrates from seeded `golfops_*` demo tables when Supabase is reachable.
  • Already supports live-looking scoreboard and standings rendering.
  • Still needs full score-entry-to-dashboard sync for true end-to-end live play.
Open /dashboard

Where You Left Off

The next build step is backend continuity.

Already working

Score entry, dashboard demo hydration, admin-config scaffolding, Supabase schemas, and deploy routing.

Still pending

Sync/RPC flow that moves submitted scorecards into `golfops_*` tables so the dashboard becomes truly live.

Near-term roadmap in repo docs

OTP sessions, role-aware score entry, finalize-week backend math, and dashboard/data-model unification are all already documented as the next engineering steps.

Demo Links

Jump back into the project.

Demo data is PGA/LIV themed and safe for testing. Local preview remains a simple static host.

Architecture

Supabase + Vercel

Static frontends with Supabase-backed league data, seeds, RPC contracts, and edge functions.

Entry Safety

Submission lock model

Score entry writes to reviewable records and is designed for league-night control instead of free-form spreadsheet edits.

Operations

Audit to finalize

The repo already includes finalize contracts and ops screens; the last mile is backend reconciliation depth.