2.5 KiB
2.5 KiB
파일-화면 매핑 가이드
/
- 화면 파일:
frontend/src/views/HomeView.vue - 역할: 게임 목록 표시, 게임 카드 클릭 이동, 새 게임 제안 모달
- 연동 API:
GET /api/games,POST /api/games/suggest
/games/:gameId
- 화면 파일:
frontend/src/views/GameHubView.vue - 역할: 선택한 게임 정보 표시, 공개 티어표 목록 표시, 작성자 닉네임 노출, 새 티어표 작성 진입
- 연동 API:
GET /api/games/:gameId,GET /api/tierlists/public
/editor/:gameId/new, /editor/:gameId/:tierListId
- 화면 파일:
frontend/src/views/TierEditorView.vue - 역할: 티어 그룹 편집, 관리자 아이템/커스텀 아이템 드래그 앤 드롭, 저장, 공개 여부 설정, PNG 다운로드
- 연동 API:
GET /api/games/:gameId,GET /api/tierlists/:id,POST /api/tierlists/custom-items,POST /api/tierlists
/login
- 화면 파일:
frontend/src/views/LoginView.vue - 역할: 로그인/회원가입 전환, 첫 가입 안내
- 연동 API:
GET /api/auth/meta,POST /api/auth/login,POST /api/auth/signup
/me
- 화면 파일:
frontend/src/views/MyTierListsView.vue - 역할: 내 티어표 목록 조회, 편집 화면으로 이동
- 연동 API:
GET /api/tierlists/me
/admin
- 화면 파일:
frontend/src/views/AdminView.vue - 역할: 작업 모드 선택, 기존 게임 선택 또는 새 게임 생성, 선택된 게임의 썸네일/아이템 관리, 파일 선택 즉시 미리보기, 아이템 삭제, 게임 삭제
- 연동 API:
POST /api/admin/games,POST /api/admin/games/:gameId/thumbnail,POST /api/admin/games/:gameId/images,DELETE /api/admin/games/:gameId/items/:itemId,DELETE /api/admin/games/:gameId
/profile
- 화면 파일:
frontend/src/views/ProfileView.vue - 역할: 프로필 표시, 작성자 닉네임 수정, 아바타 미리보기 후 저장
- 연동 API:
GET /api/auth/me,POST /api/auth/profile
공통 레이아웃
- 앱 셸 파일:
frontend/src/App.vue - 역할: 상단 내비게이션, 로그인 상태 반영, 아바타 메뉴, 관리자 메뉴 노출 제어
백엔드 진입점
- 서버 엔트리:
backend/index.js - 데이터 초기화:
backend/src/db.js - 로컬 DB 실행 설정:
docker-compose.yml - 로컬 MariaDB 가이드:
docs/local-mariadb.md - 인증 라우트:
backend/src/routes/auth.js - 게임 라우트:
backend/src/routes/games.js - 티어표 라우트:
backend/src/routes/tierlists.js - 관리자 라우트:
backend/src/routes/admin.js