9148c358d0
Topic_Agent/Topic_Blog/Topics/Topics_Biz/Topics_Meeting/Topics_Rag의 마크다운 지식 문서를 Topic_General/Topic_Programming/Topic_Graphic/Topic_Business 4개 카테고리로 재분류. - 중복 제거: frontmatter의 status:duplicate/merged + duplicate_of/redirect_to 필드로 자기 자신을 중복으로 선언한 리다이렉트 stub 1032개 제거, 완전 동일 내용 파일 472개 제거, 동일 파일명·다른 내용 충돌 시 더 큰(완전한) 버전만 유지(162개 제거) — 총 1639개 중복 제거. - 분류: 폴더 단위로 명확한 항목(AI_and_ML/Coding/Architecture 등 → Programming, Comfyui/Visual_Effects → Graphic, Topics_Biz/Topics_Meeting/사업 등 → Business, Poetic_Blog_Writing/창의성/Game_Design 등 → General)은 폴더 우선순위로, 나머지 혼재 폴더(Topic_Agent/Topic_Blog/Topics 루트/Thinking & Reasoning/Other/UI_UX_Assets)는 title/tags 키워드 스코어링으로 파일 단위 분류(불명확한 경우 General로 폴백). 원본 폴더명은 "From_*" 서브폴더로 보존해 추적 가능성 유지. - 최종 배치: Programming 2784 / General 1608 / Graphic 285 / Business 249 = 4926개 문서. - 에이전트 운영 상태(.astra/.agent/.obsidian/sessions/memory/_company/docs/lessons/_shared/src)는 지식 콘텐츠가 아니므로 재분류 대상에서 제외하고 원위치 유지. - Topics/Topic_email(상위 보호 폴더 Topic_email과 파일명 100% 중복) 삭제 — 보호 폴더 자체는 미변경. - 완전히 비게 된 Topic_Agent/Topic_Blog/Topics_Biz/Topics_Rag 폴더 제거.
4.7 KiB
4.7 KiB
id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
| id | title | category | status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | verification_status | tags | raw_sources | last_reinforced | github_commit | tech_stack | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| wiki-2026-0508-scss-sass | SCSS (Sass) | 10_Wiki/Topics | verified | self |
|
none | A | 0.9 | applied |
|
2026-05-10 | pending |
|
SCSS (Sass)
매 한 줄
"매 CSS 의 superset preprocessor — variable, nesting, mixin, module". 2006 Hampton Catlin 출시. 2020 Dart Sass 의 only 공식 implementation (LibSass deprecated). 2026 매 Tailwind v4 / native CSS nesting 의 부상으로 점유율 감소했지만 매 design system / legacy 에서 견고.
매 핵심
매 두 syntax
- SCSS: 매 CSS-superset,
{};사용 — 매 mainstream. - Sass (indented): 매 Python-like indentation,
.sass확장자 — 매 niche.
매 핵심 기능
- Variable:
$primary: #007bff; - Nesting: 매 selector 중첩 +
&(parent reference). - Mixin:
@mixin/@include— reusable block. - Function:
@function— value 반환. - Module system:
@use/@forward(2019+, 매@importdeprecated). - Inheritance:
@extend. - Math/color operations.
매 2026 상태
- Native CSS: nesting (Baseline 2024),
var(),@layer, container query — 매 SCSS 의 일부 기능 native. - Tailwind v4: 매 utility-first → SCSS 의 design system 사용 감소.
- 여전히 활발: Bootstrap 5, Material Design legacy, Rails 8 default.
매 응용
- Design system: 매 token (color, spacing, typography) 의 SCSS variable.
- Component library: 매 mixin 으로 button/card variant 생성.
- Theme switching: 매 SCSS map + CSS custom property hybrid.
💻 패턴
Variable + Nesting
$primary: #007bff;
$radius: 4px;
.card {
background: white;
border-radius: $radius;
&__header {
color: $primary;
&:hover {
color: darken($primary, 10%);
}
}
}
Mixin
@mixin flex-center($direction: row) {
display: flex;
flex-direction: $direction;
justify-content: center;
align-items: center;
}
.modal {
@include flex-center(column);
}
@use module system (modern, replaces @import)
// _colors.scss
$primary: #007bff;
$secondary: #6c757d;
// _mixins.scss
@mixin shadow($level: 1) {
box-shadow: 0 #{$level * 2}px #{$level * 4}px rgba(0,0,0,0.1);
}
// app.scss
@use 'colors' as c;
@use 'mixins' as m;
.button {
background: c.$primary;
@include m.shadow(2);
}
Map + each loop (theme tokens)
$spacing: (
xs: 4px,
sm: 8px,
md: 16px,
lg: 24px,
);
@each $name, $value in $spacing {
.p-#{$name} { padding: $value; }
.m-#{$name} { margin: $value; }
}
CSS custom property + SCSS hybrid (theme switch)
:root {
--bg: #fff;
--text: #000;
}
[data-theme='dark'] {
--bg: #111;
--text: #eee;
}
@function token($name) {
@return var(--#{$name});
}
body {
background: token(bg);
color: token(text);
}
Function
@function rem($px) {
@return #{$px / 16}rem;
}
.title {
font-size: rem(24); // 1.5rem
}
Vite 7 SCSS 설정
// vite.config.ts
export default defineConfig({
css: {
preprocessorOptions: {
scss: {
api: 'modern-compiler', // Dart Sass embedded API
additionalData: `@use "@/styles/_globals" as *;`,
},
},
},
});
매 결정 기준
| 상황 | Approach |
|---|---|
| New project (greenfield 2026) | Native CSS + Tailwind v4 |
| Existing Bootstrap project | SCSS (built-in) |
| Design system with tokens | SCSS map + CSS var hybrid |
| Theme switching | CSS custom property (SCSS optional) |
| Rails 8 / Phoenix | SCSS (default) |
| React app | CSS Modules / Tailwind / vanilla-extract |
기본값: 매 새 project 매 native CSS + Tailwind v4. 매 SCSS 매 design-system / legacy 의 limited use.
🔗 Graph
- 응용: Material_Design · Design_System
- Adjacent: Tailwind CSS · CSS Modules · vanilla-extract
🤖 LLM 활용
언제: 매 large design system, theme variable, legacy Bootstrap project. 언제 X: 매 utility-first (Tailwind), 매 native CSS nesting/var 으로 충분한 경우.
❌ 안티패턴
@import사용: deprecated (2024) — 매@use/@forward사용.- Deep nesting (4+ level): 매 specificity 폭발, BEM-like flat 으로.
- LibSass 사용: 매 deprecated 2020 — Dart Sass 만.
- Color function 의 변경 무시: 매
darken()의 공식 deprecation (2024) →color.adjust()사용.
🧪 검증 / 중복
- Verified (Sass 1.81+, Dart Sass docs, Vite 7 release).
- 신뢰도 A.
🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — @use module / Dart Sass / Vite 통합 |