κΈ°μ‘΄ 4λ μ React + Redux + styled-components κΈ°λ° μ½λλ₯Ό 2026λ μ΅μ κΈ°μ μ€νμΌλ‘ λ§μ΄κ·Έλ μ΄μ νλ©΄μ, κ° κΈ°μ μ μ°¨μ΄μ λ°μ μ μ§μ 체κ°νλ κ²μ΄ λͺ©νμ λλ€.
κ°λ° μ°μ μμ: λ‘κ·ΈμΈ β κ²μκΈ(νΌλ) β μ€ν 리 β DM
| λΆλ₯ | κΈ°μ‘΄ (4λ μ ) | λ§μ΄κ·Έλ μ΄μ (2026) |
|---|---|---|
| νλ μμν¬ | React (CRA) | Next.js 15 |
| μΈμ΄ | TypeScript | TypeScript |
| μνκ΄λ¦¬ | Redux (Ducks) | Zustand + TanStack Query |
| λΌμ°ν | React Router | Next.js App Router |
| μ€νμΌλ§ | styled-components | Tailwind CSS v4 |
| HTTP | Axios 컀μ€ν | Ky |
| μ΄λ―Έμ§ μ΅μ ν | μ΄λ―Έμ§ μ€νλΌμ΄νΈ + SVG | WebP + Next/Image |
| λ¦°ν°/ν¬λ§·ν° | Prettier | Biome |
| ν¨ν€μ§ λ§€λμ | npm/yarn | PNPM |
Next.jsλ React κΈ°λ°μ νμ€ν μΉ νλ μμν¬μ λλ€. μμ React(CRA)λ λΈλΌμ°μ μμλ§ μ€νλλ CSR(Client-Side Rendering)μ΄μ§λ§, Next.jsλ μλ²μμλ React μ»΄ν¬λνΈλ₯Ό μ€νν μ μμ΄ SSR(Server-Side Rendering) κ³Ό CSRμ νΌν©ν΄μ μ¬μ©ν μ μμ΅λλ€.
κΈ°μ‘΄ μ½λλ μμ React(CRA)μκΈ° λλ¬Έμ λͺ¨λ λ λλ§μ΄ λΈλΌμ°μ μμ μ΄λ£¨μ΄μ‘μ΅λλ€. μ΄λ μ΄κΈ° λ‘λ© μ λΉ νλ©΄μ΄ λ³΄μ΄λ λ¬Έμ (White Flash)κ° μμκ³ , κ²μμμ§ μ΅μ ν(SEO)μλ λΆλ¦¬νμ΅λλ€.
Next.js App Routerλ₯Ό μ¬μ©νλ©΄:
src/app/
βββ (auth)/login/page.tsx β /login κ²½λ‘
βββ (main)/page.tsx β / κ²½λ‘ (νΌλ)
βββ (main)/[username]/ β /username κ²½λ‘ (νλ‘ν)
βββ direct/page.tsx β /direct κ²½λ‘ (DM)
κ΄νΈλ‘ λ¬Άμ ν΄λ (auth), (main) μ URLμ μν₯μ μ£Όμ§ μλ κ·Έλ£Ήνμ
λλ€. λ μ΄μμμ λΆλ¦¬νκΈ° μν΄ μ¬μ©ν©λλ€.