尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Live sponsor contests (Long Drive, Closest to the Pin) for golf tournaments. Golfers scan a QR code at the hole, pick their name and submit; the leader updates live.
ca-central-1 (Canada)| Path | Who | What |
|---|---|---|
/c/<token> | Golfers (no login) | Contest page from the QR code: sponsor, live leader, pick name, submit |
/login | Staff | Email + password sign in, branded with the default course (logo + course map) |
/login/<course> | Staff | Same sign in, branded for one course (e.g. /login/westwood-plateau) |
/admin | Staff | Events, contests, QR codes, open/close, go live |
/admin/contests/<id> | Staff | Entries for a contest; accept / reject / void |
cp .env.example .env.local # fill in the two Supabase values
npm install
npm run dev
Import this repo in Vercel and add the two environment variables from .env.example
(Supabase → Project Settings → API). Every push to main deploys automatically.
The golf admin upgrade is a review candidate, not an approved production release.
Start with SUPABASE-UPDATE-GUIDE.md for GitHub publication,
target inventory, migration sequencing, permissions, media and coordinated rollout.
LOCAL-REVIEW.md records the implementation checks and open gates.
Read-only target checks are under supabase/checks/; runbook SQL can be exercised
offline with node scripts/verify-rollout-sql.mjs in the approved test sandbox.
See supabase/README.md. Migrations live in supabase/migrations/,
tests in supabase/tests/ (npm i @electric-sql/pglite && node supabase/tests/schema.test.mjs).
Each course client has two parts:
src/lib/course-brand.ts plus its logo and course map in
public/courses/<slug>/. NEXT_PUBLIC_DEFAULT_COURSE picks the brand on the plain /login page.supabase/courses/<slug>.sql, run once in the Supabase SQL editor after the migrations.
npm run test:db applies every file there and checks the totals.| Course | Slug | Catalog |
|---|---|---|
| GreenTee Country Club Westwood Plateau — Sky Course (Coquitlam, BC) | westwood-plateau | 5 tees (Gold 6,770 · Blue 6,355 · White 5,893 · Red 5,219 · Green 5,014 yds), from the club's official scorecard |
Use a club's logo and map only with the club's permission before showing it to anyone outside a sales demo.
Two MCP servers are recommended for UI work. Add them once at user scope so every project gets them:
claude mcp add --scope user shadcn-ui -- npx -y @jpisnice/[email protected]
claude mcp add --scope user --transport http 21st-magic https://21st.dev/api/mcp --header "x-api-key: $API_KEY_21ST"
@jpisnice/shadcn-ui-mcp-server (MIT, pinned 3.0.0): reads shadcn/ui component source and docs from GitHub.
Optional: export GITHUB_PERSONAL_ACCESS_TOKEN (no scopes needed) for higher GitHub rate limits.API_KEY_21ST; never commit the key. Prompts you send it go to 21st.dev.Note: the app does not use Tailwind yet, and shadcn/21st components assume Tailwind. Adding Tailwind v4 is the first step before installing any of their components.