Files
fe-common-rules/examples/sample-nuxt-project/.claude/project/conventions.md

1.3 KiB

프로젝트 전용 컨벤션

양식 출처: .claude/common/templates/project/conventions.md 샘플 프로젝트의 예시로 채워진 버전입니다. 공통 지침(.claude/common/)과 충돌할 경우 이 문서가 우선합니다.

디렉토리 규칙

  • components/ — 재사용 컴포넌트. 도메인별 하위 폴더(user/, order/)로 분리
  • composables/useXxx 형태의 재사용 로직
  • pages/ — Nuxt 파일 기반 라우팅
  • server/api/ — 서버 라우트 핸들러
  • types/ — 전역/공통 타입 정의

컴포넌트 규칙 (공통 규칙 오버라이드)

  • 컴포넌트 파일 길이 제한: 150줄 (공통 200줄보다 엄격)
  • 컴포넌트 당 defineProps 최대 7개. 초과 시 객체 props 로 묶기

스타일

  • 색상은 tailwind.config.tstheme.extend.colors 에 등록된 토큰만 사용 (임의 색상 금지)
  • 다크모드 클래스 prefix: dark:

네트워크

  • API 호출은 반드시 composables/api/ 의 래퍼를 통해 수행
  • 직접 $fetch / fetch 사용 금지 (테스트 목적 제외)

테스트

  • Vitest 를 기본 테스트 러너로 사용
  • 테스트 파일은 소스 옆에 *.spec.ts 로 배치
  • 공통 유틸과 composable 은 커버리지 80% 이상 유지