--- id: wiki-2026-0508-tailwind-css-v4 title: Tailwind CSS v4 category: 10_Wiki/Topics status: needs_review canonical_id: self aliases: [] duplicate_of: none source_trust_level: A confidence_score: 0.92 tags: [uncategorized] raw_sources: [] last_reinforced: 2026-05-08 github_commit: pending inferred_by: Claude Opus 4.7 (auto-normalize 2026-05-08) tech_stack: language: unspecified framework: unspecified --- # [[Tailwind CSS v4|Tailwind CSS v4]] ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) [[Tailwind CSS|Tailwind CSS]] v4λŠ” [[JavaScript|JavaScript]] μ„€μ • 파일 λŒ€μ‹  CSS μš°μ„ (CSS-first) μ•„ν‚€ν…μ²˜λ₯Ό λ„μž…ν•˜μ—¬ ν”„λ‘ νŠΈμ—”λ“œ μŠ€νƒ€μΌλ§μ˜ νŒ¨λŸ¬λ‹€μž„μ„ μ „ν™˜ν•œ ν”„λ ˆμž„μ›Œν¬μž…λ‹ˆλ‹€ [1-3]. Rust 기반의 Oxide 엔진을 νƒ‘μž¬ν•˜μ—¬ κΈ°μ‘΄ λŒ€λΉ„ λΉŒλ“œ 속도λ₯Ό λΉ„μ•½μ μœΌλ‘œ ν–₯μƒμ‹œμΌ°μœΌλ©°, λ„€μ΄ν‹°λΈŒ CSS λ³€μˆ˜λ₯Ό 톡해 λ””μžμΈ 토큰을 직접 μ œμ–΄ν•  수 μžˆλ„λ‘ μ§€μ›ν•©λ‹ˆλ‹€ [3, 4]. 이λ₯Ό 톡해 제둜 컨피그(Zero Config) ν™˜κ²½μ„ μ œκ³΅ν•˜κ³  λŸ°νƒ€μž„ μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ μ˜€λ²„ν—€λ“œ 없이 ν™•μž₯ κ°€λŠ₯ν•œ λ””μžμΈ μ‹œμŠ€ν…œκ³Ό ν…Œλ§ˆ κΈ°λŠ₯을 효율적으둜 κ΅¬ν˜„ν•  수 μžˆμŠ΅λ‹ˆλ‹€ [3, 4]. ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) * **CSS μš°μ„  μ•„ν‚€ν…μ²˜(CSS-First [[Architecture|Architecture]]):** Tailwind CSS v4의 κ°€μž₯ 큰 ꡬ쑰적 λ³€ν™”λŠ” 기쑴의 `tailwind.config.js`λ₯Ό ν†΅ν•œ JavaScript 기반 μ„€μ •μ—μ„œ λ²—μ–΄λ‚˜ CSS 파일 λ‚΄μ—μ„œ 직접 섀정을 κ΄€λ¦¬ν•œλ‹€λŠ” μ μž…λ‹ˆλ‹€ [1-3]. κ°œλ°œμžλŠ” `@source` μ§€μ‹œμ–΄(directive)λ₯Ό 톡해 μœ ν‹Έλ¦¬ν‹° 클래슀λ₯Ό μŠ€μΊ”ν•  μ½˜ν…μΈ  경둜λ₯Ό μ„ μ–Έν•˜κ³ , `@theme` μ§€μ‹œμ–΄λ₯Ό μ‚¬μš©ν•΄ ν…Œλ§ˆμ™€ λ””μžμΈ 토큰을 μ •μ˜ν•©λ‹ˆλ‹€ [5, 6]. * **ν…Œλ§ˆ λ³€μˆ˜(Theme variables) 및 λ„€μ΄ν‹°λΈŒ CSS λ³€μˆ˜:** `@theme` 블둝 내에 λ””μžμΈ 토큰(예: `--color-mint-500`)을 μ •μ˜ν•˜λ©΄, μ΄λŠ” λ„€μ΄ν‹°λΈŒ CSS λ³€μˆ˜λ‘œ λ…ΈμΆœλ  뿐만 μ•„λ‹ˆλΌ `bg-mint-500`, `text-mint-500`κ³Ό 같은 μœ ν‹Έλ¦¬ν‹° ν΄λž˜μŠ€λ“€μ„ μžλ™μœΌλ‘œ μƒμ„±ν•©λ‹ˆλ‹€ [2, 7-9]. μ΄λŸ¬ν•œ λ„€μ΄ν‹°λΈŒ CSS λ³€μˆ˜ μ ‘κ·Ό 방식은 닀크 λͺ¨λ“œλ‚˜ λΈŒλžœλ“œ ν…Œλ§ˆμ™€ 같은 λŸ°νƒ€μž„ ν…Œλ§ˆ μ „ν™˜μ„ JavaScript λ¬Έλ§₯(Context) μ—…λ°μ΄νŠΈ 없이도 μ†μ‰½κ²Œ κ΅¬ν˜„ν•  수 있게 ν•΄μ€λ‹ˆλ‹€ [3, 10]. λ˜ν•œ `var()`λ₯Ό μ‚¬μš©ν•˜μ—¬ μž„μ˜μ˜ κ°’μ΄λ‚˜ 인라인 μŠ€νƒ€μΌμ—μ„œ λ””μžμΈ 토큰을 직접 μ°Έμ‘°ν•˜λŠ” 것도 κ°€λŠ₯ν•΄μ‘ŒμŠ΅λ‹ˆλ‹€ [9, 11]. * **압도적인 μ„±λŠ₯ ν–₯상 (Oxide μ—”μ§„):** Tailwind v4λŠ” Rust둜 μž‘μ„±λœ μƒˆλ‘œμš΄ Oxide 엔진을 λ„μž…ν•˜μ—¬ κΈ°μ‘΄ 버전에 λΉ„ν•΄ μ„±λŠ₯이 크게 ν–₯μƒλ˜μ—ˆμŠ΅λ‹ˆλ‹€ [3, 4, 12]. 전체 λΉŒλ“œ μ†λ„λŠ” μ΅œλŒ€ 10λ°°, 증뢄 λΉŒλ“œ(incremental builds)λŠ” 100λ°° 이상 빨라쑌으며, 거의 즉각적인 HMR(Hot Module Replacement)을 μ œκ³΅ν•©λ‹ˆλ‹€ [3, 4, 13]. μžλ°”μŠ€ν¬λ¦½νŠΈ μ‹€ν–‰ 없이 λΉŒλ“œ νƒ€μž„μ— 정적 CSSλ₯Ό μƒμ„±ν•˜κΈ° λ•Œλ¬Έμ—, λΈŒλΌμš°μ €κ°€ μŠ€νƒ€μΌμ„ λ„€μ΄ν‹°λΈŒν•˜κ²Œ ꡬ문 뢄석할 수 μžˆμ–΄ μ„œλ²„ CPU μ§€μ—° μ‹œκ°„κ³Ό Time to First Byte(TTFB)λ₯Ό 크게 μ€„μž…λ‹ˆλ‹€ [14, 15]. * **ν™•μž₯ κ°€λŠ₯ν•œ λ””μžμΈ μ‹œμŠ€ν…œ 섀계:** Tailwind v4λŠ” μΈκ°„μ˜ 인지 μˆ˜μ€€μ— 맞좰 κ· μΌν•œ 밝기 단계λ₯Ό μ œκ³΅ν•˜λŠ” OKLCH 색상 μ‹œμŠ€ν…œμ„ μ±„νƒν•˜μ—¬ 일관성 μžˆλŠ” 색상 μŠ€μΌ€μΌμ„ μ‰½κ²Œ ꡬ좕할 수 μžˆμŠ΅λ‹ˆλ‹€ [10]. λ˜ν•œ, CVA(Class Variance Authority)와 같은 도ꡬλ₯Ό ν•¨κ»˜ μ‚¬μš©ν•˜λ©΄ μ»΄νŒŒμš΄λ“œ μ»΄ν¬λ„ŒνŠΈ([[Compound Components|Compound Components]]) νŒ¨ν„΄μœΌλ‘œ λ³΅μž‘ν•œ UI μ»΄ν¬λ„ŒνŠΈ λ³€ν˜•(variant)을 직관적이고 ν™•μž₯μ„± 있게 관리할 수 μžˆμŠ΅λ‹ˆλ‹€ [6, 16]. ## πŸ”— 지식 μ—°κ²° (Graph) - **Related Topics:** [[Design Tokens|Design Tokens]], CSS-in-JS, React Server Components, [[Compound Components|Compound Components]] - **Projects/Contexts:** [[Next.js App Router|Next.js App Router]], [[Scalable Design Systems|Scalable DesignSystems]] - **Contradictions/Notes:** μ†ŒμŠ€μ— λ”°λ₯΄λ©΄ Tailwind CSS v4λŠ” JS μ˜€λ²„ν—€λ“œκ°€ μ—†λŠ” 정적 CSS μƒμ„±μœΌλ‘œ 인해 [[Core Web Vitals|Core Web Vitals]] μ΅œμ ν™”μ™€ SSR ν™˜κ²½μ— μœ λ¦¬ν•œ 반면, Styled Components와 같은 λŸ°νƒ€μž„ 기반 CSS-in-JS λΌμ΄λΈŒλŸ¬λ¦¬λŠ” 동적 μŠ€νƒ€μΌλ§μ— 강점이 μžˆμ§€λ§Œ μŠ€νƒ€μΌ 생성 및 μ£Όμž… κ³Όμ •μ—μ„œ JavaScript μ„±λŠ₯ μ˜€λ²„ν—€λ“œκ°€ λ°œμƒν•˜λ©° [[React Server Components|React Server Components]](RSC)μ™€μ˜ κΈ°λ³Έ ν˜Έν™˜μ„±μ΄ λΆ€μ‘±ν•˜λ‹€λŠ” 차이점을 κ°€μ§‘λ‹ˆλ‹€ [14, 17-19]. --- *Last updated: 2026-04-26* ## πŸ€– LLM ν™œμš© 힌트 (How to Use This Knowledge) **μ–Έμ œ 이 지식을 μ“°λŠ”κ°€:** - *(TODO)* **μ–Έμ œ μ“°λ©΄ μ•ˆ λ˜λŠ”κ°€:** - *(TODO)* ## πŸ§ͺ 검증 μƒνƒœ (Validation) - **정보 μƒνƒœ:** needs_review - **좜처 신뒰도:** A - **κ²€ν†  이유:** *(P-Reinforce Phase 1 μžλ™ μ •κ·œν™”. λ³Έλ¬Έ 검증 ν•„μš”.)* ## 🧬 쀑볡 검사 (Duplicate Check) - **κΈ°μ‘΄ μœ μ‚¬ λ¬Έμ„œ:** *(TODO: μΈλ±μ„œ ν΄λŸ¬μŠ€ν„° 리포트 μ°Έμ‘°)* - **처리 방식:** UPDATE (μžλ™ μ •κ·œν™”) - **처리 이유:** Phase 1 μ •κ·œν™” β€” μ˜› ν…œν”Œλ¦Ώ/λˆ„λ½ ν•„λ“œ 보강. ## ⚠️ λͺ¨μˆœ 및 μ—…λ°μ΄νŠΈ (Contradictions & Updates) - **κ³Όκ±° λ°μ΄ν„°μ™€μ˜ 좩돌:** μ—†μŒ - **μ •μ±… λ³€ν™”:** μ—†μŒ ## πŸ•“ λ³€κ²½ 이λ ₯ (Changelog) | λ‚ μ§œ | λ³€κ²½ λ‚΄μš© | 처리 방식 | 신뒰도 | |------|-----------|-----------|--------| | 2026-05-08 | P-Reinforce Phase 1 μ •κ·œν™” (frontmatter + 헀더 ν‘œμ€€ν™”) | UPDATE | A | ## πŸ’» μ½”λ“œ νŒ¨ν„΄ (Code Patterns) **νŒ¨ν„΄ 1:** *(TODO: 이 ν”„λ‘œμ νŠΈ μ»¨λ²€μ…˜ λ°˜μ˜ν•œ ꡬ쑰 μŠ€μΌˆλ ˆν†€)* ```text # TODO ``` ## πŸ€” μ˜μ‚¬κ²°μ • κΈ°μ€€ (Decision Criteria) **선택 Aλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **선택 Bλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **κΈ°λ³Έκ°’:** > *(TODO)* ## ❌ μ•ˆν‹°νŒ¨ν„΄ (Anti-Patterns) - **[μ•ˆν‹°νŒ¨ν„΄]:** *(TODO: 무엇을 ν•˜λ©΄ μ•ˆ λ˜λŠ”κ°€ + 이유 + λŒ€μ‹  무엇을)*