CoOp:Anything
Search any game and see how much of it you can play with friends: every co-op mod, its stage, quality and community rating.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證삶으로 쓰는 예배전(展): <상황 경매>에 사용될 프로그램
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗현장에서 진행되는 특별한 오프라인 경매를 위한 실시간 모바일 웹 경매 플랫폼입니다. 참여자들이 자신의 스마트폰을 이용해 실시간으로 랭킹을 확인하고, 입찰 경쟁을 벌이며, 낙찰의 순간을 경험할 수 있도록 빠르고 직관적인 UX를 제공합니다.
Frontend
Backend & Database (BaaS)
이 프로젝트는 오프라인 현장에서 수많은 유저가 동시에 접속하고 입찰하는 상황을 가정하여 설계되었습니다.
place_bid) 함수를 사용하여 안전하게 입찰 로직을 처리합니다.데이터베이스는 Supabase(PostgreSQL)를 기반으로 설계되었으며, 주요 테이블 간의 관계는 다음과 같습니다.
| Table | Description |
|---|---|
auction_items | 경매에 올라온 물품들의 정보와 현재 입찰 상태, 낙찰자 정보를 관리합니다. |
bids | 유저의 모든 입찰 이력을 기록하며, auction_items와 users를 연결합니다. |
users | 경매 서비스의 사용자 프로필 및 크레딧 정보를 관리하며 Supabase Auth와 연동됩니다. |
global_settings | 경매 종료 시간 등 시스템 전체의 설정값을 관리하는 키-밸류 저장소입니다. |
auction_items는 여러 개의 bids를 가질 수 있습니다 (1:N 관계).users는 여러 개의 bids를 생성할 수 있습니다 (1:N 관계).auction_items의 winner_id는 users 테이블을 참조하여 현재 낙찰자를 식별합니다.master 권한을 가진 계정만 접근 가능한 관리자 페이지에서 경매 시작/즉시 종료/상태 초기화를 제어합니다.FSD(Feature-Sliced Design)를 따라 계층별로 폴더를 분리했습니다.
src/
├── app/ # Next.js App Router 페이지 및 라우트 (/, /login, /setup-profile, /auction, /my-values, /admin, /api/health)
├── widgets/ # 여러 feature/entity를 조합한 화면 단위 UI (header, auction 목록, my-values 위젯 등)
├── features/ # 사용자 행동 단위 기능 (입찰하기, 카카오 로그인, 관리자 경매 제어 등)
├── entities/ # 도메인 모델 및 관련 UI (auction 등)
└── shared/ # 공통 UI, Supabase 클라이언트(db), 유틸, 타입, 라우트 상수 등
이 프로젝트를 실행하기 위해서는 Node.js(LTS)와 pnpm, 그리고 Supabase 프로젝트가 필요합니다.
Supabase 프로젝트에는 다음 스키마가 사전에 구성되어 있어야 합니다 (현재 마이그레이션 SQL은 레포에 포함되어 있지 않으므로, 기존 프로젝트를 공유받거나 동일한 스키마를 직접 구성해야 합니다).
users(role 컬럼 포함), auction_items, bids, global_settingsplace_bid (동시 입찰 Race Condition 방지용), reset_auction_results (경매 결과 초기화용, supabase/migrations/20261021144036_reset_auction_results.sql)# 저장소 클론
git clone https://github.com/kingkiboots/worth-it-auction.git
# 프로젝트 폴더로 이동
cd worth-it-auction
# 의존성 설치 (pnpm 사용을 권장합니다)
pnpm install
프로젝트 루트 디렉토리에 .env.local 파일을 생성하고, Supabase 프로젝트 정보를 입력합니다.
NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY=your_supabase_publishable_key
pnpm dev
브라우저를 열고 http://localhost:3000에 접속하여 프로젝트를 확인합니다.
Supabase 스키마가 변경되었다면, 아래 명령어로 src/shared/db/database.types.ts를 최신 상태로 갱신할 수 있습니다.
pnpm gen:db-types