Skip to content

Next.js와 NestJS로 인프런을 클론 코딩한 모노레포입니다. 개발 과정에서 학습한 내용을 매 PR에 기록하고, README의 “학습 노트” 섹션에서 관련 PR 링크를 계속 정리하고 있습니다.

Notifications You must be signed in to change notification settings

yoonc01/next-nest

Repository files navigation

next-nest 모노레포

pnpm 워크스페이스를 사용한 Next.js + NestJS 모노레포 프로젝트입니다.

학습 노트

프로젝트 진행 중 학습한 내용을 정리했습니다:


프로젝트 구조

next-nest/
├── apps/               # 애플리케이션들
│   ├── web/           # Next.js 프론트엔드
│   └── api/           # NestJS 백엔드
├── packages/          # 공유 패키지들
│   └── ui/            # 공유 UI 컴포넌트
├── package.json
└── pnpm-workspace.yaml

시작하기

# 의존성 설치
pnpm install

# 개발 서버 실행
pnpm dev              # 모든 앱 동시 실행
pnpm dev:web          # Next.js만 실행
pnpm dev:api          # NestJS만 실행

# 빌드
pnpm build

Backend 준비 절차

  1. 필수 도구

    • Node.js LTS (20.x)
    • pnpm 10+
    • Docker & Docker Compose
  2. 환경 변수

    • cd apps/api && cp .env.example .env로 예제 파일을 복사한 뒤, 필요하면 값을 수정하세요.
  3. PostgreSQL 컨테이너 실행

    cd apps/api
    docker compose up -d        # 최초 실행
    # 문제가 생기면 docker compose down -v 로 볼륨 포함 정리
  4. Prisma 스크립트
    루트에서 실행하면 apps/api 패키지에 한정되어 동작합니다.

    pnpm api:prisma:migrate     # prisma migrate dev
    pnpm api:prisma:generate    # prisma generate
    pnpm api:prisma:studio      # prisma studio

기술 스택

  • 패키지 매니저: pnpm (workspace)
  • 프론트엔드: Next.js
  • 백엔드: NestJS
  • 개발 도구: TypeScript, ESLint, Prettier

About

Next.js와 NestJS로 인프런을 클론 코딩한 모노레포입니다. 개발 과정에서 학습한 내용을 매 PR에 기록하고, README의 “학습 노트” 섹션에서 관련 PR 링크를 계속 정리하고 있습니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •