Skip to content

karpitonys-stash/create-react-tailwind-app

Repository files navigation

React + Typescript + Tailwind ν…œν”Œλ¦Ώ

  • 개인적으둜 λΉ λ₯΄κ²Œ μ‹œμž‘ν•˜λ €κ³  λ§Œλ“  보일러 ν”Œλ ˆμ΄νŠΈ
  • λ¦¬μ•‘νŠΈ + vite 기반 ν΄λΌμ΄μ–ΈνŠΈ μ‚¬μ΄λ“œ SPA 앱을 λ§Œλ“€λ•Œ μ‚¬μš©

쒅속성

stacks

- tailwindcss 4.0
- pnpm
- react-router v7 (data mode)
- @tanstack-query/react
- zod
- zustand
- axios
  • @/pages/_Layout같은 Next.js식 μž„ν¬νŠΈ κ°€λŠ₯

ν”„λ‘œμ νŠΈ ꡬ쑰

src/
 β”œβ”€ apis/            # API κ΄€λ ¨ μ½”λ“œ (μžμ„Έν•œ κ·œμΉ™μ€ μ•„λž˜ μ°Έκ³ )
 β”œβ”€ components/      # μž¬μ‚¬μš© κ°€λŠ₯ν•œ UI μ»΄ν¬λ„ŒνŠΈ
 β”œβ”€ constants/       # μ „μ—­ μƒμˆ˜
 |  β”œβ”€ path.ts       # URL λΌμš°νŒ… μƒμˆ˜ (νƒ€μž… μ•ˆμ •μ„± 보μž₯을 μœ„ν•΄)
 |  └─ query-keys.ts # νƒ„μŠ€νƒ 쿼리의 쿼리 ν‚€λ“€ λͺ¨μŒ
 β”œβ”€ hooks/           # μ»€μŠ€ν…€ ν›…
 β”œβ”€ layouts/         # λ ˆμ΄μ•„μ›ƒ μ»΄ν¬λ„ŒνŠΈ (헀더, ν‘Έν„° 포함)
 β”œβ”€ lib/             # μœ ν‹Έλ¦¬ν‹° ν•¨μˆ˜ λͺ¨μŒ
 β”œβ”€ pages/           # 라우트 λ‹¨μœ„ νŽ˜μ΄μ§€
 β”œβ”€ routes/          # λΌμš°νŒ… κ΄€λ ¨ 둜직
 β”œβ”€ stores/          # Zustand μ „μ—­ μƒνƒœ
 β”œβ”€ styles/          # μ „μ—­ μŠ€νƒ€μΌ
 β”œβ”€ types/           # μ•± μ „μ—­ νƒ€μž… μ •μ˜
 └─ main.tsx         # μ§„μž…μ 

apis/ κ·œμΉ™ (상세)

apis/
 β”œβ”€ auth/          # 도메인 λ‹¨μœ„ (ex. 인증)
 β”‚  β”œβ”€ dto/        # API μš”μ²­/응닡 μŠ€ν‚€λ§ˆ (zod)
 β”‚  β”œβ”€ queries/    # GET μš”μ²­
 β”‚  └─ mutations/  # POST, PUT, DELETE μš”μ²­
 └─ instance.ts    # Axios 곡톡 μΈμŠ€ν„΄μŠ€
  • 도메인 λ‹¨μœ„: /auth, /user, /post 처럼 μ„œλ²„ API κΈ°μ€€μœΌλ‘œ 폴더 뢄리
  • dto/: μ„œλ²„μ™€ μ†‘μˆ˜μ‹ ν•˜λŠ” λ°μ΄ν„°μ˜ νƒ€μž…/μŠ€ν‚€λ§ˆ μ •μ˜
  • queries/ vs mutations/: React Query의 μš©λ„μ— 맞게 API 호좜 뢄리
  • instance.ts: 인증, μ—λŸ¬ 핸듀링, μž¬μ‹œλ„ 둜직 ν¬ν•¨ν•œ Axios μΈμŠ€ν„΄μŠ€

μ‹œμž‘

pnpm install
pnpm run dev

About

πŸ“¦ λ¦¬μ•‘νŠΈ + ν…ŒμΌμœˆλ“œ + λΌμš°ν„° v7

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published