--- id: wiki-2026-0508-style-registry title: Style Registry 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 --- # [[Style Registry|Style Registry]] ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) Style RegistryλŠ” [[Next.js App Router|Next.js App Router]] 및 React Server Components(RSC) ν™˜κ²½μ—μ„œ Styled Components와 같은 λŸ°νƒ€μž„ [[CSS-in-JS|CSS-in-JS]] 라이브러리λ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•΄ λ„μž…λœ ν•„μˆ˜μ μΈ λ Œλ”λ§ νŒ¨ν„΄μž…λ‹ˆλ‹€ [1]. μ„œλ²„ λ Œλ”λ§ κ³Όμ •μ—μ„œ λ°œμƒν•˜λŠ” CSS κ·œμΉ™μ„ μˆ˜μ§‘ν•˜κ³ , 이λ₯Ό HTML λ¬Έμ„œμ˜ ν—€λ“œ(head) 뢀뢄에 μ•ˆμ „ν•˜κ²Œ μ£Όμž…ν•˜λŠ” 역할을 μˆ˜ν–‰ν•©λ‹ˆλ‹€ [1]. 이λ₯Ό 톡해 ν΄λΌμ΄μ–ΈνŠΈ μ»΄ν¬λ„ŒνŠΈ 래퍼λ₯Ό ν™œμš©ν•˜μ—¬ μ„œλ²„ μ „μš© μ‹€ν–‰ ν™˜κ²½μ—μ„œ λ°œμƒν•˜λŠ” μŠ€νƒ€μΌ μ£Όμž…μ˜ ν•œκ³„λ₯Ό κ·Ήλ³΅ν•©λ‹ˆλ‹€ [1]. ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) * **λ“±μž₯ λ°°κ²½ 및 ν•„μš”μ„±:** [[Next.js|Next.js]]의 App Router와 React [[Server Components|Server Components]](RSC)둜의 ꡬ쑰적 μ „ν™˜μ€ λŸ°νƒ€μž„ CSS-in-JS 라이브러리 κ΅¬ν˜„ 방식에 큰 μž¬ν‰κ°€λ₯Ό μš”κ΅¬ν–ˆμŠ΅λ‹ˆλ‹€ [1]. μ„œλ²„ μ»΄ν¬λ„ŒνŠΈκ°€ μ„œλ²„μ—μ„œ 정적 HTML둜 λ Œλ”λ§λ˜κΈ° λ•Œλ¬Έμ—, Styled Components 같은 λΌμ΄λΈŒλŸ¬λ¦¬λŠ” μ„œλ²„ λ Œλ”λ§ 쀑 기쑴의 λŸ°νƒ€μž„ μŠ€νƒ€μΌ μ£Όμž…(runtime injection) λ©”μ»€λ‹ˆμ¦˜μ„ μ‚¬μš©ν•  수 μ—†κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€ [1]. * **μž‘λ™ λ©”μ»€λ‹ˆμ¦˜ (3단계 옡트인 ν”„λ‘œμ„ΈμŠ€):** μ΄λŸ¬ν•œ 간극을 λ©”κΎΈκ³  RSC ν™˜κ²½μ—μ„œ CSS-in-JSλ₯Ό κΈ°λŠ₯ν•˜κ²Œ ν•˜κΈ° μœ„ν•΄ [[Next.js 15|Next.js 15]]μ—μ„œλŠ” λ‹€μŒκ³Ό 같은 과정을 μ§€μ›ν•©λ‹ˆλ‹€ [1]. 1. λ Œλ”λ§ 쀑 λ°œμƒν•˜λŠ” CSS κ·œμΉ™λ“€μ„ μˆ˜μ§‘ν•˜κΈ° μœ„ν•œ **Style Registry**λ₯Ό μƒμ„±ν•©λ‹ˆλ‹€ [1]. 2. `useServerInsertedHTML` 훅을 μ‚¬μš©ν•˜μ—¬ μˆ˜μ§‘λœ CSS κ·œμΉ™λ“€μ„ HTML ν—€λ“œμ— μ£Όμž…ν•©λ‹ˆλ‹€ [1]. 3. 이 λ ˆμ§€μŠ€νŠΈλ¦¬λ₯Ό μ œκ³΅ν•˜λŠ” ν΄λΌμ΄μ–ΈνŠΈ μ»΄ν¬λ„ŒνŠΈ(Client Component)둜 전체 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ 감싸 μ μš©ν•©λ‹ˆλ‹€ [1]. * **ν•˜μ΄λ“œλ ˆμ΄μ…˜ 뢈일치([[Hydration|Hydration]] Mismatch) μœ„ν—˜κ³Ό ν•΄κ²°:** 이 λ ˆμ§€μŠ€νŠΈλ¦¬ νŒ¨ν„΄μ„ ν™œμš©ν•˜λ©΄ App Router λ‚΄μ—μ„œ Styled Componentsκ°€ κΈ°λŠ₯ν•  수 μžˆμ§€λ§Œ, μ„œλ²„μ™€ ν΄λΌμ΄μ–ΈνŠΈκ°€ μ„œλ‘œ λ‹€λ₯Έ 클래슀 이름을 생성할 경우 ν•˜μ΄λ“œλ ˆμ΄μ…˜ λΆˆμΌμΉ˜κ°€ λ°œμƒν•  μœ„ν—˜μ΄ μƒκΉλ‹ˆλ‹€ [2]. 이λ₯Ό μ™„ν™”ν•˜κΈ° μœ„ν•΄μ„œλŠ” `next.config.js` νŒŒμΌμ—μ„œ `styledComponents` 컴파일러 μ˜΅μ…˜μ„ ν•„μˆ˜μ μœΌλ‘œ ν™œμ„±ν™”ν•˜μ—¬ μ„œλ²„-ν΄λΌμ΄μ–ΈνŠΈ 경계 μ „λ°˜μ— 걸쳐 μΌκ΄€λœ 클래슀 이름 생성을 보μž₯ν•΄μ•Ό ν•©λ‹ˆλ‹€ [2]. ## πŸ”— 지식 μ—°κ²° (Graph) - **Related Topics:** [[React Server Components|React Server Components]], CSS-in-JS, Styled Components, [[Next.js App Router|Next.js App Router]], Hydration Mismatch - **Projects/Contexts:** Modern [[Frontend|Frontend]] Engineering, Next.js 15 Migration - **Contradictions/Notes:** μ†ŒμŠ€ λ‚΄ 직접적인 λͺ¨μˆœμ μ€ μ—†μœΌλ‚˜, Style Registry νŒ¨ν„΄ μžμ²΄λ§ŒμœΌλ‘œλŠ” μ„œλ²„μ™€ ν΄λΌμ΄μ–ΈνŠΈ κ°„ 클래슀λͺ… λΆˆμΌμΉ˜λΌλŠ” λΆ€μž‘μš©μ„ 막을 수 μ—†μœΌλ―€λ‘œ `next.config.js` 컴파일러 섀정을 ν†΅ν•œ 보완이 λ°˜λ“œμ‹œ λ³‘ν–‰λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€ [2]. --- *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: 무엇을 ν•˜λ©΄ μ•ˆ λ˜λŠ”κ°€ + 이유 + λŒ€μ‹  무엇을)*