YogiEat은 다인원 모임에서 함께 먹을 맛집을 추천해주는 서비스입니다.
- 모임 생성 및 참여자 초대
- 맛집 의견 수집 및 투표
- AI 기반 맞춤 맛집 추천
- 실시간 협업 및 공유
- Framework: Next.js 16.1.1 (App Router)
- Language: TypeScript 5
- Styling: Tailwind CSS v4
- State Management: TanStack React Query 5
- Form Handling: React Hook Form + Zod
- HTTP Client: Ky
- Container: Docker
- CI/CD: GitHub Actions
- Node.js 24.x
- pnpm 9.x
- Docker (optional, for local deployment)
# Clone repository
git clone https://github.com/Nexters/yogieat.git
cd yogieat
# Install dependencies
pnpm install
# Run development server
pnpm devOpen http://localhost:3000 to view the application.
pnpm dev # Start development server
pnpm build # Build for production
pnpm start # Start production server
pnpm lint # Run ESLint
pnpm format # Format code with Prettier
pnpm type-check # Run TypeScript type checkingYogiEat follows Semantic Versioning with automated release management:
- Automated Versioning: Version numbers are automatically determined based on commit messages
- CHANGELOG Generation: Release notes are automatically generated from commit history
- GitHub Releases: Releases are automatically published on GitHub
See all releases at GitHub Releases
- Major (X.0.0): Breaking changes
- Minor (1.X.0): New features (backward compatible)
- Patch (1.0.X): Bug fixes (backward compatible)
- Beta (1.0.0-beta.X): Pre-release versions on develop branch
We welcome contributions! Please follow our guidelines:
- Read the Contributing Guide
- Follow Conventional Commits format
- Use Git Flow for branch management
- Write tests for new features
- Update documentation as needed
# Start a new feature
git flow feature start my-feature
# Make changes with conventional commits
git commit -m "feat(scope): add new feature"
# Push and create PR
git push origin feature/my-featureFor more details, see:
- Contributing Guide - Development workflow and guidelines
- Release Guide - Release process and versioning
- Developer Cheatsheet - Quick reference for common tasks
- CLAUDE.md - Project architecture and coding conventions
- CONTRIBUTING.md - Contribution guidelines
- docs/RELEASE.md - Release process documentation
- docs/DEVELOPER_CHEATSHEET.md - Developer quick reference
YogiEat uses automated deployment via GitHub Actions:
- Production: Deployed on push to
mainbranch - Staging: Deployed on push to
developbranch - Zero-downtime: Rolling deployment with health checks
Trigger manual deployment via GitHub Actions workflow_dispatch.
yogieat/
├── app/ # Next.js App Router pages
├── src/
│ ├── apis/ # API layer (queries, mutations)
│ ├── components/ # Reusable components
│ ├── pageComponents/ # Page-level components
│ ├── hooks/ # Custom React hooks
│ ├── schemas/ # Zod validation schemas
│ ├── types/ # TypeScript types
│ ├── utils/ # Utility functions
│ └── styles/ # Global styles and tokens
├── public/ # Static assets
├── docker/ # Docker configurations
└── .github/workflows/ # CI/CD workflows
Required environment variables:
NEXT_PUBLIC_API_URL=https://dev-api.yogieat.com
NEXT_PUBLIC_AWS_S3=https://yogieat-statics.s3.ap-southeast-2.amazonaws.com
NEXT_PUBLIC_GTM_ID=GTM-M3SWGCR8This project is private and proprietary.
To learn more about the technologies used:
- Next.js Documentation
- React Documentation
- TypeScript Documentation
- Tailwind CSS Documentation
- TanStack Query Documentation
For questions or issues:
- Check existing GitHub Issues
- Create a new issue with detailed description
- Contact the development team
Built with ❤️ by the Nexters team