59 lines
1.9 KiB
Markdown
59 lines
1.9 KiB
Markdown
# 개발 할 일
|
|
|
|
## 기반 작업
|
|
|
|
- [x] Vue 3와 Vite 프로젝트 생성
|
|
- [x] Tailwind CSS 설정
|
|
- [x] Docker 정적 배포 기반 작성
|
|
- [x] 개발·배포·AI 작업 문서 작성
|
|
- [ ] ESLint와 Prettier 규칙 확정
|
|
- [ ] Vue Router 설치와 화면 구조 생성
|
|
- [ ] Pinia 설치와 상태 구조 생성
|
|
- [ ] 테스트 도구 도입 범위 결정
|
|
|
|
## 1단계: 덱 불러오기와 로컬 플레이
|
|
|
|
- [ ] 기존 덱 쿼리 파서 작성
|
|
- [ ] 외부 입력 검증 스키마 작성
|
|
- [x] NAS 카드 이미지 읽기 전용 공유 경로 구성
|
|
- [ ] 카드 이미지 원본 환경변수를 프런트엔드 코드에 연결
|
|
- [ ] 카드 인스턴스 생성
|
|
- [ ] 게임 보드 배경과 영역 정의
|
|
- [ ] 덱 셔플과 드로우
|
|
- [ ] 카드 드래그 이동
|
|
- [ ] 앞면·뒷면 전환
|
|
- [ ] 탭·언탭
|
|
- [ ] 덱·손패·필드·무덤 이동
|
|
- [ ] 덱 위 N장 공개와 정리
|
|
- [ ] 로컬 상태 초기화
|
|
|
|
## 2단계: 온라인 2인 세션
|
|
|
|
- [ ] Node.js 실시간 서버 구성
|
|
- [ ] Socket.IO 연결
|
|
- [ ] 방 만들기와 방 코드 참가
|
|
- [ ] 좌석과 플레이어 소유권
|
|
- [ ] 카드 조작 권한 서버 검증
|
|
- [ ] 상대 손패 비공개 전송
|
|
- [ ] 상태 스냅샷과 재접속
|
|
- [ ] 연결 종료 처리
|
|
- [ ] NAS WebSocket 프록시 배포
|
|
|
|
## 3단계: 안정화
|
|
|
|
- [ ] 모바일·태블릿 Pointer Events 검증
|
|
- [ ] 카드 겹침과 z-index 조작 UX
|
|
- [ ] 잘못된 덱 입력 오류 화면
|
|
- [ ] 이미지 로딩 실패 폴백
|
|
- [ ] 접근성 키보드 조작 범위 검토
|
|
- [ ] 서버 재시작 시 방 종료 안내
|
|
- [ ] Redis 또는 상태 저장 필요성 검토
|
|
|
|
## 확인이 필요한 정책
|
|
|
|
- [ ] 카드 뒷면 이미지와 플레이매트 자산 확정
|
|
- [ ] 한 방의 최대 플레이어와 관전자 정책
|
|
- [ ] 방 유지 시간
|
|
- [ ] 사용하지 않는 방 자동 삭제 시간
|
|
- [ ] 덱 빌더와 시뮬레이터 사이의 최종 전달 형식
|