├── src/ │ ├── app/ │ │ ├── (auth)/ # 인증이 필요한 라우트 그룹 │ │ │ ├── dashboard/ │ │ │ ├── profile/ │ │ │ └── layout.tsx │ │ ├── (marketing)/ # 마케팅/공개 페이지 라우트 그룹 │ │ │ ├── about/ │ │ │ ├── blog/ │ │ │ └── layout.tsx │ │ ├── api/ # API 라우트 │ │ ├── error.tsx # 전역 에러 페이지 │ │ ├── layout.tsx # 루트 레이아웃 │ │ ├── loading.tsx # 전역 로딩 상태 │ │ └── page.tsx # 홈페이지 │ ├── components/ │ │ ├── common/ # 공통 컴포넌트 │ │ │ ├── Button/ │ │ │ ├── Input/ │ │ │ └── Card/ │ │ ├── features/ # 특정 기능 관련 컴포넌트 │ │ │ ├── auth/ │ │ │ ├── dashboard/ │ │ │ └── profile/ │ │ └── layout/ # 레이아웃 관련 컴포넌트 │ │ ├── Header/ │ │ ├── Footer/ │ │ └── Sidebar/ │ ├── hooks/ # 커스텀 훅 │ │ ├── useAuth.ts │ │ └── useForm.ts │ ├── lib/ # 유틸리티 함수와 설정 │ │ ├── utils/ │ │ ├── config/ │ │ └── constants/ │ │ └── store/ │ ├── services/ # API 서비스 로직 │ │ ├── auth.ts │ │ └── api.ts │ ├── styles/ # 전역 스타일 │ │ └── globals.css │ └── types/ # 타입 정의 │ └── index.ts ├── public/ # 정적 파일 │ ├── images/ │ └── fonts/ └── middleware.ts # 인증, 로깅 등의 공통 기능 처리 └── package.json