OpenAthlete
AGPLv3 endurance training platform: EU-oriented hosting, transparent CTL/ATL/TSB logic in code, self-hosting, and full export. Built in Grenoble.
먹회골프 팀 편성 게임 & 라운딩 기록
Translation pending
Sports & fitnessTypeScript · CSSGitHub @HAEYULOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
골프팀짜기
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗골프 모임 "먹회골프" 인원을 게임처럼 팀 편성하고, 라운딩 기록(스코어·사진)을 누적 보관하는 웹앱입니다.
supabase/schema.sql — 테이블 생성supabase/seed.sql — 고정 멤버 11명 등록 (배우자 관계 포함)supabase/storage.sql — 사진 업로드용 공개 버킷 생성seed.sql 맨 아래 주석 처리된 update 문을 참고해서 SQL Editor에서
실행하세요.Project URL 과 service_role 키(secret)를 복사합니다.
service_role 키는 절대 클라이언트(브라우저)에 노출되지 않고, 서버 코드에서만
사용됩니다(Server Components / Server Actions)..env.example 을 복사해 .env.local 을 만들고 값을 채워주세요.
cp .env.example .env.local
NEXT_PUBLIC_SUPABASE_URL=발급받은 Project URL
SUPABASE_SERVICE_ROLE_KEY=발급받은 service_role 키
SUPABASE_PHOTO_BUCKET=round-photos
npm install
npm run dev
http://localhost:3000 에서 확인합니다.
/admin): 라운딩 생성, 라운딩 목록, 게스트 추가, 실력 순위(skill_rank)
조정, 관리자 권한 부여/rounds/[id]): 상태별(모집중 → 마감 → 팀확정 → 진행중 → 완료) 화면 전환,
참가 체크, 팀 편성 모드 선택(완전랜덤 / 부부한팀 / 부부갈라놓기 / 남녀균등 / 실력균등),
다시 팀짜기, 팀 결과, 스코어/사진/rounds/[id]/draw): 이름을 눌러 골프공을 뽑는 인터랙션으로 팀 결과를
하나씩 공개/rounds/[id]/score): 팀별/개인별 타수 입력 + 사진 업로드 →
라운딩을 "완료" 상태로 전환/memories): 완료된 라운딩을 시간순 카드 피드로 조회/me): 개인 참여 횟수, 평균 타수, 최고 기록, 역대 라운딩supabase/schema.sql 참고: members, rounds, round_participants,
team_assignments(재편성 이력 포함), round_scores, round_results 6개 테이블로
구성됩니다.
members.character_url 필드가 이미 열려 있어서, 추후 AI로 생성한 캐릭터 이미지를
연결해도 다른 테이블 변경 없이 확장할 수 있습니다.is_guest = true 로 members 테이블에 저장되므로, 자주 오는 게스트를
재사용할 수 있습니다.