"Taskify는 일정 관리와 공유 기능을 제공하는 웹 애플리케이션입니다."
| @곽지훈 | @김수연 | @김태욱 | @김희성 | @박찬영 |
|---|---|---|---|---|
2025년 4월 22일 ~ 2025년 5월 12일
| 대상 | 규칙 | 예시 |
|---|---|---|
| 폴더명 | 케밥케이스 (kebab-case) | components/, user-profile/ |
| 컴포넌트 파일명 | 파스칼케이스 (PascalCase) | UserProfile.jsx |
| 스타일 파일명 | 케밥케이스 + .styles.js |
user-profile.styles.js |
| 이미지/아이콘 파일명 | 케밥케이스 | logo-icon.png, profile-default.png |
| 함수명/변수명 | 카멜케이스 (camelCase) | fetchUserData, userList |
| 환경변수 | 대문자+스네이크케이스 | REACT_APP_API_URL |
| 역할 | 네이밍 | 예시 |
|---|---|---|
| 메인 브랜치(배포용) | main |
main/ |
| 개발 통합 브랜치 | develop |
develop/ |
| 기능 개발 브랜치 | feature/기능명 |
feature/dashboard-modal |
| 긴급 수정 브랜치 | hotfix/이슈명 |
hotfix/login-error |
| 릴리즈 준비 브랜치 | release/버전명 |
release/v1.0.0 |
| 역할 | 사용 기술 |
|---|---|
| Language | |
| Framework / UI | |
| State Management | |
| Styling | |
| Drag & Drop | |
| Auth | |
| Version Control | |
| Deployment |
src/
├── assets/ 📦 정적 파일 (이미지, 아이콘 등)
│
├── components/ 🧩 UI 컴포넌트 모음
│ ├── common/ 🛠️ 공통으로 사용하는 재사용 컴포넌트
│ │ ├── input.tsx ✏️ 인풋 필드
│ │ ├── button/ 🔘 버튼 UI
│ │ ├── card/ 📇 카드 컴포넌트
│ │ ├── dropdown/ 🔽 드롭다운 UI
│ │ └── gnb/ 🧭 상단 네비게이션바
│ │
│ └── domain/ 📚 도메인 중심 컴포넌트 (비즈니스 로직 포함)
│ ├── dashboard/ 📊 대시보드 관련 UI
│ ├── form/ 📝 로그인 / 회원가입 / 프로필 폼
│ └── modals/ 💬 모달 컴포넌트들
│
├── hooks/ 🪝 커스텀 훅 모음
│
├── pages/ 📄 라우팅 페이지 (Next.js)
│ ├── index.tsx 🏠 메인 랜딩 페이지
│ ├── login.tsx 🔐 로그인 페이지
│ ├── signup.tsx 🧑💻 회원가입 페이지
│ ├── mydashboard.tsx 📂 나의 대시보드 페이지
│ ├── mypage.tsx 🙋♂️ 마이페이지
│ └── dashboard/
│ └── [id]/ 🧱 대시보드 상세/수정 페이지
│ ├── index.tsx
│ └── edit.tsx
│
├── api/ 🌐 API 요청 모듈
│ ├── client/ ⚙️ axios 설정 (interceptor 등)
│ └── services/ 📬 API 서비스 함수 모음 (auth, dashboard 등)
│
├── styles/ 🎨 글로벌 스타일 및 테마
│ ├── globals.css
│ ├── reset.css
│ └── theme.tsx
│
└── utils/ 🧠 유틸리티 함수 모음