| 김하경 | 신현우 | 양서윤 | 정주연 |
| 위시리스트 페이지 공통 컴포넌트 |
로그인 페이지 회원가입 페이지 |
프로젝트 초기세팅 기록 페이지 마이 페이지 |
홈 페이지 공통 컴포넌 |
도나카와는 단순히 지출을 기록하는 가계부를 넘어 소비의 이유를 기록하고 돌아보는 쇼핑 분석 서비스 입니다.
물건을 구매하기 전 혹은 장바구니에 담을 때, 간단한 구매 이유를 함께 남김으로써 충동적인 소비를 한 번 더 멈춰 생각하게 합니다. 이후 쌓인 기록을 통해 “왜 이 소비를 했는지”, “이 선택은 나에게 어떤 의미였는지”를 스스로 점검할 수 있도록 돕습니다. 또한 소비가 고민되는 순간에는 AI와의 대화를 통해 감정에 치우치지 않은 판단을 유도합니다.
도나카와는 당신이 돈에 끌려다니는 소비자가 아니라, 가치와 기준을 가지고 선택하는 주도적인 소비자가 될 수 있도록 돕습니다.
- pnpm 버전
- 10.12.1
- pnpm 버전 설치 방법
pnpm set version 버전 # 프로젝트 최상위 폴더 위치에서 명령어 입력
- pnpm 명령어 예시
pnpm install # 전체 설치
pnpm add 라이브러리 # 라이브러리 설치
pnpm dev # 실행
- camelCase
- 변수명, 함수명에 적용
- 첫글자는 소문자로 시작, 띄어쓰기는 붙이고 뒷 단어의 시작을 대문자로
- ex- handleDelete
- 언더바 사용 X (클래스명은 허용)
develop ← 작업 브랜치
-
main branch: 배포 브랜치 -
develop branch: 개발 브랜치, feature 브랜치가 merge됨 -
feature branch: 페이지/기능 브랜치
develop 브랜치에서 새로운 브랜치를 생성.- 작업을 완료하고 커밋 메시지에 맞게 커밋.
- Pull Request 생성
develop브랜치로 병합.
- 커밋 유형
- 🎉 Init: 프로젝트 세팅
- ✨ Feat: 새로운 기능 추가
- 🐛 Fix : 버그 수정
- 💄 Design : UI(CSS) 수정
- ✏️ Typing Error : 오타 수정
- 📝 Docs : 문서 수정
- 🚚 Mod : 폴더 구조 이동 및 파일 이름 수정
- 💡 Add : 파일 추가 (ex- 이미지 추가)
- 🔥 Del : 파일 삭제
- ♻️ Refactor : 코드 리펙토링
- 🚧 Chore : 배포, 빌드 등 기타 작업
- 🔀 Merge : 브랜치 병합
- 형식:
커밋유형: 상세설명 (#이슈번호) - 예시:
- 🎉 Init: 프로젝트 초기 세팅 (#1)
- ✨ Feat: 메인페이지 개발 (#2)
Branch Naming 규칙
- 브랜치 종류
init: 프로젝트 세팅feat: 새로운 기능 추가fix: 버그 수정refactor: 코드 리펙토링
- 형식:
브랜치종류/#이슈번호/상세기능 - 예시:
- init/#1/init
- fix/#2/splash
Issue Title 규칙
- 태그 목록:
Init: 프로젝트 세팅Feat: 새로운 기능 추가Fix: 버그 수정Refactor: 코드 리펙토링
- 형식: [태그] 작업 요약
- 예시:
- [Init] 프로젝트 초기 세팅
- [Feat] Header 컴포넌트 구현
📦DONAKAWA-FRONTEND
┣ 📂.github
┃ ┣ 📂ISSUE_TEMPLATE
┃ ┣ 📂appmod
┃ ┗ 📜pull_request_template.md
┣ 📂public
┃ ┗ 📂fonts
┃ ┗ 📜Logo.svg
┣ 📂src
┃ ┣ 📂apis
┃ ┣ 📂assets
┃ ┣ 📂components
┃ ┣ 📂constants
┃ ┣ 📂layouts
┃ ┣ 📂pages
┃ ┃ ┣ 📂BudgetSettingPage
┃ ┃ ┃ ┗ 📂components
┃ ┃ ┣ 📂BudgetSummaryPage
┃ ┃ ┃ ┣ 📂components
┃ ┃ ┃ ┗ 📂hooks
┃ ┃ ┣ 📂ConsumptionPage
┃ ┃ ┃ ┗ 📂hooks
┃ ┃ ┣ 📂FindPasswordPage
┃ ┃ ┣ 📂HomePage
┃ ┃ ┃ ┣ 📂components
┃ ┃ ┃ ┗ 📂hooks
┃ ┃ ┣ 📂ItemSelectionPage
┃ ┃ ┃ ┗ 📂components
┃ ┃ ┣ 📂LoginPage
┃ ┃ ┣ 📂MyPage
┃ ┃ ┃ ┗ 📂components
┃ ┃ ┣ 📂ReportPage
┃ ┃ ┃ ┣ 📂components
┃ ┃ ┃ ┗ 📂hooks
┃ ┃ ┣ 📂SignupPage
┃ ┃ ┃ ┗ 📂components
┃ ┃ ┣ 📂WishlistPage
┃ ┃ ┃ ┣ 📂components
┃ ┃ ┃ ┗ 📂hooks
┃ ┣ 📂queries
┃ ┣ 📂routes
┃ ┣ 📂types
┃ ┣ 📂utils
┃ ┣ 📜App.tsx
┃ ┣ 📜index.css
┃ ┣ 📜main.tsx
┃ ┗ 📜vite-env.d.ts
┣ 📜.env
┣ 📜.gitignore
┣ 📜.prettierrc
┣ 📜.stylelintrc
┣ 📜eslint.config.js
┣ 📜index.html
┣ 📜package-lock.json
┣ 📜package.json
┣ 📜pnpm-lock.yaml
┣ 📜pnpm-workspace.yaml
┣ 📜README.md
┣ 📜tsconfig.app.json
┣ 📜tsconfig.json
┣ 📜tsconfig.node.json
┣ 📜vercel.json
┗ 📜vite.config.ts
- public
- fonts - 폰트
- src
- apis - 서버와 통신하는 API 함수 모음
- assets - 사용되는 모든 에셋
- components - 공용 컴포넌트 및 스타일
- constants - 프로젝트 전역에서 사용되는 상수값 및 설정 모음
- layouts - 페이지의 공통 레이아웃 컴포넌트
- pages - 실제 라우팅되는 페이지 컴포넌트
- routes - 도메인 별 라우팅 페이지와 컴포넌트 및 스타일 등
- types - TypeScript 타입 정의 모음
- utils - 전역으로 사용되는 함수
