NutriGo 프론트엔드 애플리케이션입니다. React 18과 TypeScript를 기반으로 구축되었으며, Vite를 빌드 도구로 사용합니다.
- Node.js 18.0 이상
- npm 또는 yarn
프로젝트 루트 디렉터리에서:
npm install프로젝트 루트에 .env 파일을 생성하고 다음 변수를 설정합니다:
VITE_API_BASE_URL: 백엔드 API 기본 URL (예:http://localhost:8080)VITE_AI_SERVICE_URL: AI 서비스 URL (예:http://localhost:8000)
예시:
VITE_API_BASE_URL=http://localhost:8080
VITE_AI_SERVICE_URL=http://localhost:8000
npm run dev개발 서버가 시작되면 기본적으로 http://localhost:5173 에서 접속할 수 있습니다.
npm run build빌드된 파일은 build/ 디렉터리에 생성됩니다.
- 홈페이지: 서비스 소개 및 주요 기능 안내
- 분석 페이지: 가게 링크 또는 이미지 업로드를 통한 영양 분석
- 인사이트 페이지: 식습관 캘린더 및 주간 리포트
- 챌린지 페이지: 건강 목표 달성을 위한 챌린지
- NutriBot 페이지: 기록 기반 챗봇 코칭
- 마이페이지: 사용자 설정 및 목표 관리
src/components/ui/: 재사용 가능한 UI 컴포넌트 (shadcn/ui 기반)src/pages/: 페이지 컴포넌트src/api/: 백엔드 API 호출 함수src/contexts/: React Context (인증 등)
frontend/
├── src/
│ ├── api/ # API 호출 함수
│ │ ├── auth.ts
│ │ ├── nutrition.ts
│ │ ├── nutribot.ts
│ │ └── ...
│ ├── components/ # React 컴포넌트
│ │ ├── ui/ # UI 컴포넌트
│ │ └── ...
│ ├── contexts/ # React Context
│ ├── pages/ # 페이지 컴포넌트
│ ├── styles/ # 스타일 파일
│ ├── App.tsx # 메인 앱 컴포넌트
│ └── main.tsx # 진입점
├── package.json
├── vite.config.ts
└── index.html
- React 18.3+
- TypeScript
- Vite 6.3+
- Tailwind CSS
- shadcn/ui
- React Router
- Framer Motion
- Axios
- Recharts
- Node.js 버전 확인:
node --version(18.0 이상 필요) node_modules폴더 삭제 후 재설치:rm -rf node_modules npm install
- 포트 5173이 이미 사용 중인지 확인
vite.config.ts에서 포트 변경 가능
.env파일의VITE_API_BASE_URL설정 확인- 백엔드 서버가 실행 중인지 확인
- CORS 설정 확인
- TypeScript 타입 오류 확인
- 의존성 버전 충돌 확인