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

 
 
 

Contributors

โšก