Skip to content

CS24-Project/CS24-FE

Repository files navigation

image

CS24

구름톤 딥다이브 풀스택 11회차 과정의 2차 프로젝트

💻 FE Developer

김서윤 마재훈 조희우
@pookey1104 @bluemky1 @huiwoo-jo


🛠 기술 스택

역할 종류 선정 이유
Library React UI를 재사용 가능한 컴포넌트로 구성하여 개발 및 유지보수가 용이함.
Programming Language TypeScript 정적 타입 언어로, 컴파일 단계에서 타입을 체크하여 안정적인 코드 작성이 가능함.
Styling Styled-Components 컴포넌트 단위로 스타일을 관리할 수 있어, 각 컴포넌트에 맞는 스타일을 쉽게 작성하고 유지할 수 있음.
Data Fetching Axios TanStack Query 비동기 데이터 관리와 캐싱을 효율적으로 처리하며, 서버 상태를 간단히 관리 가능.
API Documentation Swagger API 문서화를 위한 표준 도구로, 팀 간 소통과 유지보수를 용이하게 함.
Routing React Router SPA(Single Page Application)의 라우팅을 직관적으로 관리하며, 다양한 라우팅 옵션 제공.
Formatting ESLint Prettier 코드 품질을 보장하고 일관된 코드 스타일을 유지하며,
협업 시 충돌을 줄이고 가독성을 향상.
Package Manager Yarn 패키지 설치 속도가 빠르고, 캐싱 기능을 통해 이전에 설치한 패키지를 재사용할 수 있음.
Deployment Vercel 프로젝트의 빠르고 쉬운 배포를 지원.
Bundler Vite 초고속 빌드를 제공하여 개발 중 빠른 피드백을 받을 수 있음.
State Management Zustand 전역 상태 관리를 간편하게 해주며, React Hooks와 유사한 방식으로 상태를 관리할 수 있어 러닝 커브가 낮고, 작은 크기로 인해 성능에 부담이 적으며, 비동기 로직과도 쉽게 통합 가능.

🔗 Git Convention

🔥 Commit Message Convention

커밋 유형 설명
Feat 새로운 기능 추가
Fix 버그 수정
Docs 문서 수정
Style 코드 formatting, 세미콜론 누락, 코드 자체의 변경이 없는 경우
Refactor 코드 리팩토링
Test 테스트 코드, 리팩토링 테스트 코드 추가
Chore 패키지 매니저 수정, 그 외 기타 수정 ex) .gitignore
Build 빌드 관련 파일 수정에 대한 커밋
Design CSS 등 사용자 UI 디자인 변경
Comment 필요한 주석 추가 및 변경
Rename 파일 또는 폴더 명을 수정하거나 옮기는 작업만인 경우
Remove 파일을 삭제하는 작업만 수행한 경우
!BREAKING CHANGE 커다란 API 변경의 경우
!HOTFIX 급하게 치명적인 버그를 고쳐야 하는 경우


🌿 Branch Convention

Branch Naming 규칙

  • 형식: <prefix>/<기능요약>
  • 기능 요약: snake_case로 작성
  • Prefix 목록:
    • Feature/: 새로운 기능 개발
    • Fix/: 버그 수정
    • Docs/: 문서 추가, 수정, 삭제
    • Style/: 코드 formatting, 세미콜론 누락 등 코드 자체 변경이 없는 작업
    • Refactor/: 코드 리팩토링
    • Test/: 테스트 코드 작성 및 리팩토링
    • Chore/: 기타 작업 (패키지 매니저 수정, .gitignore 변경 등)
    • Build/: 빌드 관련 파일 수정
    • Design/: CSS 등 사용자 UI 디자인 변경
    • Comment/: 주석 추가 및 변경
    • Rename/: 파일 또는 폴더 이름 변경 및 이동
    • Remove/: 파일 삭제 작업만 수행한 경우
    • Hotfix/: 긴급하게 치명적인 버그 수정
  • 예시:
    • Feature/login
    • Fix/sign_in

📋 Issue Convention

Issue Title 규칙

  • 형식: [태그] 제목
  • 태그 목록:
    • Feat: 새로운 기능 개발
    • Fix: 버그 수정
    • Docs: 문서 추가, 수정, 삭제
    • Style: 코드 formatting, 세미콜론 누락 등 코드 자체 변경이 없는 작업
    • Refactor: 코드 리팩토링
    • Test: 테스트 코드 작성 및 리팩토링
    • Chore: 기타 작업 (패키지 매니저 수정, .gitignore 변경 등)
    • Build: 빌드 관련 파일 수정
    • Design: CSS 등 사용자 UI 디자인 변경
    • Comment: 주석 추가 및 변경
    • Rename: 파일 또는 폴더 이름 변경 및 이동
    • Remove: 파일 삭제 작업만 수행한 경우
    • Hotfix: 긴급하게 치명적인 버그 수정
  • 예시:
    • [Feat] 대시보드 컴포넌트 구현
    • [Docs] README 작성

Issue Template

  • 제목: [태그] 간단한 요약
  • 내용:
    ## 🤔 목적
    
    > 이슈 등록 목적을 상세하게 적어주세요.
    
    ## 📝 TO-DO
    
    - [ ] 구현할 기능을 상세하게 적어주세요.
    
    ---

🔄 Pull Request (PR) Convention

PR Title 규칙

  • 형식: [태그] 제목
  • 태그 목록:
    • Feat: 새로운 기능 개발
    • Fix: 버그 수정
    • Docs: 문서 추가/수정
    • Style: 코드 스타일 변경
    • Refactor: 코드 리팩토링
    • Test: 테스트 코드 작성/수정
    • Chore: 기타 작업
    • Build: 빌드 관련 작업
    • Design: UI/디자인 작업
    • Comment: 주석 추가/수정
    • Rename: 파일/폴더 이름 변경
    • Remove: 파일 삭제
    • Hotfix: 긴급한 버그 수정
  • 예시:
    • [Feat] 대시보드 컴포넌트 구현
    • [Fix] Router 설정 버그 수정

PR Template

  • PR 작성 규칙:

    ## 📮 관련 이슈
    
    - resolved #{issue_number}
    
    ## ✍️ 구현 내용
    
    - 구현 내용을 상세하게 적어주세요.
    
    ## 📷 구현 영상
    
    - 구현 영상을 업로드 해주세요.
    
    ## ✔️ 확인 사항
    
    - [ ] 컨벤션에 맞는 PR 타이틀
    - [ ] 관련 이슈 연결
    - [ ] PR 관련 정보 연결 (작업자, 라벨, 마일스톤 등)
    - [ ] Github Action 통과
          <br>

📂 프로젝트 구조

|-- 📁 .github
|-- 📁 node_modules
|-- 📁 public
|-- 📁 src
|   |-- 📁 assets
|   |-- 📁 hooks
|   |-- 📁 lib
|   |-- 📁 routes
|   |-- 📁 store
|   |-- 📁 styles
|   |-- 📁 types
|   |-- 📁 utils
|-- .env
|-- .gitignore
|-- .prettierignore
|-- .prettierrc
|-- .yarnrc.yml
|-- eslint.config.js
|-- index.html
|-- package.json
|-- README.md
|-- tsconfig.app.json
|-- tsconfig.json
|-- tsconfig.node.json
|-- vercel.json
|-- vite.config.ts
|-- yarn.lock

About

프론트 레파지토리입니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •