61 lines
1.5 KiB
Markdown
61 lines
1.5 KiB
Markdown
|
|
# 프로젝트 개요
|
||
|
|
|
||
|
|
- **타입**: React + TypeScript + Vite
|
||
|
|
- **Node.js**: `.node-version` 참조
|
||
|
|
- **패키지 매니저**: npm
|
||
|
|
- **빌드 도구**: Vite
|
||
|
|
|
||
|
|
## 빌드 및 실행
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# 의존성 설치
|
||
|
|
npm install
|
||
|
|
|
||
|
|
# 개발 서버
|
||
|
|
npm run dev
|
||
|
|
|
||
|
|
# 빌드
|
||
|
|
npm run build
|
||
|
|
|
||
|
|
# 테스트
|
||
|
|
npm run test
|
||
|
|
|
||
|
|
# 린트
|
||
|
|
npm run lint
|
||
|
|
|
||
|
|
# 포맷팅
|
||
|
|
npm run format
|
||
|
|
```
|
||
|
|
|
||
|
|
## 프로젝트 구조
|
||
|
|
|
||
|
|
```
|
||
|
|
src/
|
||
|
|
├── assets/ # 정적 리소스 (이미지, 폰트 등)
|
||
|
|
├── components/ # 공통 UI 컴포넌트
|
||
|
|
│ ├── common/ # 범용 컴포넌트 (Button, Input 등)
|
||
|
|
│ └── layout/ # 레이아웃 컴포넌트 (Header, Sidebar 등)
|
||
|
|
├── hooks/ # 커스텀 훅
|
||
|
|
├── pages/ # 페이지 컴포넌트 (라우팅 단위)
|
||
|
|
├── services/ # API 호출 로직
|
||
|
|
├── store/ # 상태 관리 (Context, Zustand 등)
|
||
|
|
├── types/ # TypeScript 타입 정의
|
||
|
|
├── utils/ # 유틸리티 함수
|
||
|
|
├── App.tsx
|
||
|
|
└── main.tsx
|
||
|
|
```
|
||
|
|
|
||
|
|
## 팀 규칙
|
||
|
|
|
||
|
|
- 코드 스타일: `.claude/rules/code-style.md` 참조
|
||
|
|
- 네이밍 규칙: `.claude/rules/naming.md` 참조
|
||
|
|
- 테스트 규칙: `.claude/rules/testing.md` 참조
|
||
|
|
- Git 워크플로우: `.claude/rules/git-workflow.md` 참조
|
||
|
|
- 팀 정책: `.claude/rules/team-policy.md` 참조
|
||
|
|
|
||
|
|
## 의존성 관리
|
||
|
|
|
||
|
|
- Nexus 프록시 레포지토리를 통해 npm 패키지 관리 (`.npmrc`)
|
||
|
|
- 새 의존성 추가: `npm install 패키지명`
|
||
|
|
- devDependency: `npm install -D 패키지명`
|