Skip to content

Latest commit

Β 

History

History
60 lines (49 loc) Β· 3.13 KB

File metadata and controls

60 lines (49 loc) Β· 3.13 KB

JAMMING FE

μŒμ•…μΈμ„ μœ„ν•œ ν•©μ£Ό/잼 μ„Έμ…˜ λ§€μΉ­ λͺ¨λ°”일 μ›Ή ν”Œλž«νΌ

Rules

  • νŒ¨ν‚€μ§€ λ§€λ‹ˆμ €λŠ” λ°˜λ“œμ‹œ pnpm μ‚¬μš© (npm, yarn μ‚¬μš© κΈˆμ§€)
  • ν”„λ‘ νŠΈμ—”λ“œ λ˜λŠ” λ””μžμΈ κ΄€λ ¨ μž‘μ—… μ‹œ λ°˜λ“œμ‹œ docs/design/README.mdλ₯Ό λ¨Όμ € ν™•μΈν•˜κ³ , μ •μ˜λœ 컬러 νŒ”λ ˆνŠΈΒ·ν°νŠΈΒ·μ»΄ν¬λ„ŒνŠΈ μŠ€νƒ€μΌμ„ μ€€μˆ˜ν•  것 (ν”„λ‘œμ νŠΈ μ „λ°˜μ˜ λΆ„μœ„κΈ°λ₯Ό ν•΄μΉ˜λŠ” μž„μ˜ μƒ‰μƒΒ·ν°νŠΈ μ‚¬μš© κΈˆμ§€)

Tech Stack

Category Technology
Framework Next.js 16 (App Router)
Language TypeScript
UI React 19 RC, Tailwind CSS 4, Framer Motion
State Zustand, TanStack React Query 5
Backend Supabase (Auth, DB, Storage)
External API ManiaDB (곑 검색), Naver Map (μž₯μ†Œ 검색)
Testing Vitest, Playwright, React Testing Library

Project Structure

app/
β”œβ”€β”€ (pages)/
β”‚   β”œβ”€β”€ (signin)/          # λΉ„νšŒμ› μ˜μ—­ (둜그인, κ°€μž…)
β”‚   β”œβ”€β”€ (only-user)/       # 인증 ν•„μˆ˜ μ˜μ—­ (잼 μ„Έμ…˜, λ§ˆμ΄νŽ˜μ΄μ§€)
β”‚   β”œβ”€β”€ context.tsx        # GlobalContext
β”‚   └── layout.tsx         # Global providers
β”œβ”€β”€ api/                   # Server Actions & Route Handlers
β”‚   β”œβ”€β”€ functions/         # CRUD μ„œλ²„ ν•¨μˆ˜
β”‚   β”œβ”€β”€ maniadb/           # 곑 검색 API
β”‚   β”œβ”€β”€ naver/             # μž₯μ†Œ 검색 API
β”‚   └── auth/              # OAuth 콜백
β”œβ”€β”€ lib/                   # enums, interfaces, utils
β”œβ”€β”€ stores/                # Zustand stores (session, notification, etc.)
β”œβ”€β”€ ui/                    # λ””μžμΈ μ‹œμŠ€ν…œ, μ»΄ν¬λ„ŒνŠΈ
└── util/supabase/         # Supabase client/server helpers
__tests__/                 # ν…ŒμŠ€νŠΈ 파일 (unit, integration, component, e2e)

Key Files

Purpose Path
μ•± μ§„μž…μ  app/layout.tsx
κΈ€λ‘œλ²Œ μƒνƒœ (Zustand) app/stores/session.ts, notification.ts, feedback.ts
인증 μœ ν‹Έ app/util/supabase/auth.ts
νƒ€μž… μ •μ˜ app/lib/interfaces/entity.interface.ts
잼 μ„Έμ…˜ CRUD app/(pages)/(only-user)/jamsession/functions/fetch.ts
API ν•¨μˆ˜ app/api/functions/read.ts, create.ts, delete.ts
κΈ€λ‘œλ²Œ CSS app/ui/global.css
Zod μŠ€ν‚€λ§ˆ app/lib/zod.ts
ν…ŒμŠ€νŠΈ μ„€μ • vitest.config.ts, playwright.config.ts
CI/CD .github/workflows/test.yml

Documentation

μž‘μ—… μ „ docs 폴더 μ°Έμ‘°: docs/context/ β†’ docs/architecture/ β†’ docs/patterns/ β†’ docs/design/ μˆœμ„œ