Gym Log
개인 맞춤 근력 트레이닝 추적기(PWA)
청소년 AFL·넷볼·럭비·축구·농구 등 경기 교대와 실시간 점수를 제공합니다
Fair rotations, subs and live scores for junior AFL, netball, rugby league, rugby union, football (soccer), basketball, futsal, hockey, touch football and Oztag. Free for the 2026 season.
스포츠·피트니스GitHub @stevejb-ctrl온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Auskick manager
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Junior Australian Rules Football Game Manager.
A PWA for managing junior Aussie rules teams — rotations, scoring, availability, and a live on-field view for game day.
npm install
cp .env.local.example .env.local # then fill in the Supabase values
npm run dev
Typecheck: npx tsc --noEmit.
Siren supports three sign-in paths:
https://<your-project-ref>.supabase.co/auth/v1/callbackhttps://siren.app).http://localhost:3000 for local dev) to the Redirect URLs allowlist.Supabase ships usable defaults. To rebrand the emails:
Both Google and magic-link flows redirect the browser back to /auth/callback?code=…&next=….
The server route in src/app/auth/callback/route.ts exchanges the code for a session cookie and redirects to next (same-origin only; falls back to /dashboard).
See .env.local.example. Notable:
NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY — public Supabase config, safe in the browser.SUPABASE_SERVICE_ROLE_KEY — required for /admin (super-admin dashboard) and /run/[token] (public live-game) flows. Never expose to the browser.Unit tests (Vitest, pure functions, no DB):
npm test
End-to-end tests (Playwright + local Supabase) drive real browser flows against a full stack: Next.js + Supabase Auth + Postgres. They're the UAT safety net — every write path has a spec.
Prerequisites (one-time):
Docker Desktop running — Supabase CLI uses it to spin up Postgres + Auth locally.
Supabase CLI installed — see https://supabase.com/docs/guides/cli.
Test env file:
cp .env.test.example .env.test
The defaults are the Supabase CLI's deterministic local keys — safe to commit to the example, safe on every dev machine. No secrets needed.
Run the suite:
npm run e2e # headless, the default
npm run e2e:ui # Playwright inspector UI — best for debugging
npm run e2e:headed # watch the browser drive itself
npm run e2e -- path/to.spec.ts # single spec
npm run e2e wraps scripts/e2e-setup.mjs, which:
.env.test into the environment.supabase status → supabase start).supabase db reset --no-confirm) so every run starts from a clean, migrated schema.playwright test.How to ship a change:
e2e/tests/*.spec.ts in the same PR.npm run e2e must be green before merging..github/workflows/ci.yml.See e2e/README.md for conventions and the "when to add a test" checklist.