Code Convention

  1. Naming Convention (이름 규칙):

  2. React Component

  3. 함수명 작성:

  4. Husky(feat.Prettier & ESLint):

  5. 폴더 및 파일 구조

    project-root/
    ├── public/               # 정적 파일 (이미지, 폰트, etc.)
    ├── src/                  # 소스 코드
    │   ├── components/       # 재사용 가능한 컴포넌트(css 관련 파일도 이 폴더에)
    │   │   ├── layout/       # Header, footer, etc.
    │   │   ├── common/       # Button, DropDown, etc.
    │   ├── pages/            # Next.js 페이지 라우트
    │   │   ├── api/          # API 라우트
    │   │   ├── auth/         # 인증 관련 페이지 (예: 로그인, 회원가입)
    │   │   └── index.tsx     # 메인 페이지
    │   │   └── _app.tsx      # 모든 페이지의 공통 설정
    │   ├── styles/           # 전역 스타일 또는 컴포넌트 스타일
    │   ├── hooks/            # 커스텀 훅
    │   ├── contexts/         # Context API 관련 파일
    │   ├── lib/              # 유틸리티 함수, API 호출 함수
    │   ├── types/            # TypeScript 타입 정의
    │   └── store/            # 전역 상태 관리 (Recoil, Redux 등 사용 시)
    ├── .env.local            # 환경 변수
    ├── next.config.js        # Next.js 설정 파일
    └── tsconfig.json         # TypeScript 설정 파일
    

    https://www.codeit.kr/topics/fe-sprint10-mission/lessons/8612


PR (Pull Request) 규칙

  1. PR 제목과 설명:
  2. PR 사이즈:
  3. 리뷰어 지정:
  4. Merge Policy:

https://velog.io/@ye-ji/Git-PR-잘-쓰는-방법

Commit Rules

<aside> 💡

Feat 새로운 기능을 추가할 경우
Style CSS 등 사용자 UI 디자인 변경
Fix 버그를 고친 경우
Refactor 프로덕션 코드 리팩토링
Test 테스트 추가, 테스트 리팩토링 (프로덕션 코드 변경 X)
Rename 파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우
Remove 파일을 삭제하는 작업만 수행한 경우
!BREAKING CHANGE 커다란 API 변경의 경우
!HOTFIX 급하게 치명적인 버그를 고쳐야하는 경우
Comment 필요한 주석 추가 및 변경
Docs 문서를 수정한 경우
Chore 빌드 테스트 업데이트, 패키지 매니저를 설정하는 경우 (프로덕션 코드 변경 X)
</aside>

Ground Rules

  1. 커뮤니케이션:
  2. Git Flow: