OpenTrailPaper
LilyGO T5S3 4.7" E-Paper PRO용 오픈소스 자전거 컴퓨터 펌웨어, 오프라인 지도·GPX 경로·FIT 기록·블루투스 센서 지원
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 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.