# 코딩 컨벤션 ## 기본 원칙 - 모든 문서와 커뮤니케이션은 한국어 기준으로 유지한다. - 코드 주석은 필요 시 `JSDoc` 형식을 우선한다. - 기존 정적 사이트 구조를 존중하고, 대규모 구조 변경 시에는 먼저 `docs/history.md`에 의사결정을 기록한다. ## 파일 및 폴더 규칙 - 시리즈 데이터 파일은 `datas/uaXX.js`, `datas/uapr.js`처럼 시리즈 키와 일치하게 관리한다. - 이미지 폴더는 `images//` 규칙을 유지한다. - 새 문서는 `docs/` 하위에서 목적별 단일 파일에 누적 관리한다. ## JavaScript 규칙 - 기존 코드 스타일에 맞춰 기본 들여쓰기는 4칸을 사용한다. - 상수는 `const`, 재할당 변수는 `let`을 사용한다. - DOM 참조가 반복될 경우 `getEl()`처럼 묶어서 관리하는 패턴을 우선 고려한다. - URL 파라미터, `localStorage`, 동적 import는 예외 처리와 함께 사용한다. - 카드 데이터 객체의 필드명은 기존 호환성을 위해 현재 형태(`imgSrc`, `Number`, `count`, `key`)를 유지한다. ## HTML 규칙 - 정적 페이지는 의미 단위별로 `header`, `main`, `aside` 등을 우선 사용한다. - 페이지별 스크립트가 길어질 경우 신규 기능은 별도 JS 파일 분리 여부를 먼저 검토한다. - 인라인 이벤트(`onclick`)는 기존 파일에 이미 존재하므로 즉시 제거 대상은 아니지만, 신규 대형 기능은 `addEventListener` 방식 우선 검토한다. ## CSS 규칙 - 공통 UI는 가능한 한 Tailwind 유틸리티 클래스를 우선 사용한다. - 페이지 특화 보정 스타일만 인라인 `