monorepo 구조
폴더 구조고급
monorepo는 강력하지만 규모와 복잡성으로 AI 코딩 어시스턴트를 압도할 수 있습니다. 이 구조 패턴은 Claude Code가 앱과 공유 패키지 간을 효율적으로 탐색할 수 있도록 monorepo를 조직하는 방법을 보여줍니다. 핵심은 계층적 CLAUDE.md 파일입니다 -- 공유 컨벤션을 위한 루트 파일과 패키지별 규칙을 위한 개별 파일.
monorepoTurborepopnpm워크스페이스폴더 구조
패턴 코드
my-monorepo/
├── apps/
│ ├── web/ # Next.js frontend
│ │ ├── src/
│ │ ├── CLAUDE.md # Web-specific rules
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── api/ # Express/Fastify backend
│ │ ├── src/
│ │ ├── CLAUDE.md # API-specific rules
│ │ ├── package.json
│ │ └── tsconfig.json
│ └── mobile/ # React Native app
│ ├── src/
│ ├── CLAUDE.md
│ └── package.json
├── packages/
│ ├── shared/ # Shared types & utils
│ │ ├── src/
│ │ │ ├── types/ # Cross-app type definitions
│ │ │ ├── utils/ # Shared helper functions
│ │ │ └── index.ts # Barrel export
│ │ └── package.json # @repo/shared
│ ├── ui/ # Shared UI component library
│ │ ├── src/
│ │ │ ├── Button/
│ │ │ ├── Input/
│ │ │ └── index.ts
│ │ ├── CLAUDE.md # Component conventions
│ │ └── package.json # @repo/ui
│ └── config/ # Shared configs
│ ├── eslint/
│ ├── tsconfig/
│ └── tailwind/
├── tooling/ # Build & dev tooling
│ ├── scripts/
│ └── docker/
├── CLAUDE.md # Root: shared conventions
├── turbo.json # Turborepo pipeline
├── pnpm-workspace.yaml
└── package.json
# Root CLAUDE.md:
# - Use pnpm only. Never npm or yarn.
# - Import between packages via @repo/* alias.
# - All packages use TypeScript strict mode.
# - Run single package: pnpm --filter @repo/api test
# - Run affected: pnpm turbo test --filter=...[HEAD~1]
# - Dependency graph:
# packages/shared → packages/ui → apps/web
# packages/shared → apps/api
# packages/shared → apps/mobile
이 패턴을 프로젝트 설정에 복사하여 적용하세요.
실행 미리보기
monorepo 구조
monorepo 구조에 대해
Claude Code 패턴은 복잡한 개발 시나리오를 효과적으로 다루기 위한 검증된 아키텍처 설계와 워크플로우 구조입니다. monorepo 구조은(는) 고급 수준의 폴더 구조 패턴으로, 프로젝트에 맞게 응용할 수 있는 테스트된 반복 가능한 접근 방식을 제공하여 더 효율적이고 일관된 결과를 만들어 냅니다.