Skip to content

About

티치몬 인턴 유튜브 클론코딩 과제 레포지토리입니다.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

과제: YouTube 클론 코딩

목표

  • 티치몬의 폴더구조와 컨벤션을 똑같이 함으로써 티치몬 프론트 폴더 구조에 관해 자세히 알 수 있어요.
  • 유튜브 메인페이지와 유튜브 영상 클릭 시 나오는 상세 페이지 2개만 구현하면 돼요.

기술 스택

  • 웹 제품: TypeScript, React
  • 상태 관리: React-Query, Zustand
  • 스타일링: Emotion
  • 패키지 매니저: PNPM

폴더 구조 규칙 (반드시 준수)

  • src/pages: 페이지 단위
  • src/containers: 페이지 내부 섹션/복합 컴포넌트
  • src/components/ui: 공통 UI 컴포넌트
  • src/components/layout: 모달 등 레이아웃에 해당되는 컴포넌트
  • src/constants, src/types, src/utils, src/hooks: 역할별 분리
  • public/assets, public/icons: 정적 리소스

컨벤션

  • 폴더명: kebab-case
  • 파일명: camelCase
  • 컴포넌트 구조: index.tsx + style.ts
  • export/import는 alias(@/) 사용
  • 타입은 src/types에 정의, 상수는 src/constants에 정의

커밋 컨벤션

  • fix, feat, docs, chore 등 해당하는 변경사항에 맞는 것을 골라 사용하면 돼요.
  • 형식은 fix(#이슈번호) :: 내용으로 작성하면 돼요.

참고사항

  • 폴더 내부에 .gitkeep은 폴더 유지용으로 작성된 파일이에요. 내부에 파일을 생성했을 경우 .gitkeep은 삭제해주세요.
  • 모든 작업은 이슈를 생성해서 진행해주세요. ex) 사이드바 컴포넌트 제작

About

티치몬 인턴 유튜브 클론코딩 과제 레포지토리입니다.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages