v2026.03.30-04 레포지토리 재연결
프로젝트 초기 상태를 기준으로 저장소를 재구성하고 업로드 규칙을 정비한다. 이미지 자산은 Git LFS를 통해 원격 용량 제한에 대응한다. Made-with: Cursor
This commit is contained in:
40
docs/convention.md
Normal file
40
docs/convention.md
Normal file
@@ -0,0 +1,40 @@
|
||||
# 코딩 컨벤션
|
||||
|
||||
## 기본 원칙
|
||||
- 언어: 프론트엔드 UI 문구는 한국어/일본어 이중 언어를 유지한다.
|
||||
- 모듈: 브라우저 ES Module(`type="module"`) 기반으로 파일을 분리한다.
|
||||
- 데이터: 게임 데이터는 코드 하드코딩 배열(`db/*.db.js`)로 관리한다.
|
||||
|
||||
## 네이밍 규칙
|
||||
- 파일명:
|
||||
- HTML: 화면 의미 중심 (`index.html`, `nsw-detail.html`)
|
||||
- 스크립트: 화면/도메인 단위 (`nsw.js`, `nsw-detail.js`)
|
||||
- 데이터: `*.db.js` 접미사 사용
|
||||
- 변수/함수:
|
||||
- `camelCase` 사용
|
||||
- 상태 객체는 의미가 드러나는 명칭 사용 (`filterState`)
|
||||
- 불리언 계열은 `is/has/can` 접두어 권장
|
||||
- 상수:
|
||||
- 변경 없는 매핑/사전형 데이터는 `const` 사용
|
||||
|
||||
## 코드 스타일
|
||||
- 들여쓰기: 공백 2칸
|
||||
- 세미콜론: 사용
|
||||
- 문자열: 기존 코드 흐름에 맞춰 작은따옴표 우선
|
||||
- DOM 접근:
|
||||
- 반복 접근 요소는 상단에서 캐싱
|
||||
- 이벤트 리스너는 기능별 초기화 함수로 묶어 관리
|
||||
|
||||
## 상태/로직 구성
|
||||
- 필터/정렬/언어 상태는 단일 상태 객체에서 관리한다.
|
||||
- 렌더링 파이프라인은 아래 순서를 유지한다.
|
||||
1) 데이터 포맷팅
|
||||
2) 필터링
|
||||
3) 정렬
|
||||
4) DOM 반영
|
||||
- 상세 페이지는 URL 쿼리(`no`)를 단일 진입점으로 사용한다.
|
||||
|
||||
## 문서/버전 규칙
|
||||
- 작업 후 `docs/update.md`, `docs/todo.md`, `docs/history.md`, `docs/map.md`, `docs/spec.md`, `docs/convention.md`를 최신화한다.
|
||||
- 커밋 메시지는 한국어로 작성한다.
|
||||
- 커밋 제목은 `버전명 + 요약` 형식으로 작성한다. (예: `v2026.03.30-03 레포지토리 재연결`)
|
||||
Reference in New Issue
Block a user