timelabs 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +30 -20
- package/package.json +1 -1
- package/skills/web-design/claude-code/SKILL.md +270 -0
- package/skills/web-design/claude-code/analyze/analyze-benchmark-rules.md +229 -0
- package/skills/web-design/claude-code/analyze/analyze-benchmark.md +302 -0
- package/skills/web-design/claude-code/analyze/analyze-mockup.md +572 -0
- package/skills/web-design/claude-code/collect/collect-app.md +258 -0
- package/skills/web-design/claude-code/collect/collect-desktop.md +231 -0
- package/skills/web-design/claude-code/collect/collect-hybrid.md +222 -0
- package/skills/web-design/claude-code/collect/collect-style.md +155 -0
- package/skills/web-design/claude-code/collect/collect-type.md +42 -0
- package/skills/web-design/claude-code/collect/collect-video.md +239 -0
- package/skills/web-design/claude-code/collect/collect-web.md +279 -0
- package/skills/web-design/claude-code/defs/ai-recommend/01-style-design-recommend.md +64 -0
- package/skills/web-design/claude-code/defs/ai-recommend.md +58 -0
- package/skills/web-design/claude-code/defs/app-layouts/02-utility.md +54 -0
- package/skills/web-design/claude-code/defs/app-layouts/03-social.md +71 -0
- package/skills/web-design/claude-code/defs/app-layouts/04-game.md +54 -0
- package/skills/web-design/claude-code/defs/app-layouts/05-fintech.md +62 -0
- package/skills/web-design/claude-code/defs/app-layouts/06-healthcare.md +66 -0
- package/skills/web-design/claude-code/defs/app-layouts/07-ecommerce.md +63 -0
- package/skills/web-design/claude-code/defs/app-layouts/08-education.md +88 -0
- package/skills/web-design/claude-code/defs/app-layouts/09-creative.md +86 -0
- package/skills/web-design/claude-code/defs/app-layouts.md +59 -0
- package/skills/web-design/claude-code/defs/app-motions/01-utility.md +51 -0
- package/skills/web-design/claude-code/defs/app-motions/02-social.md +55 -0
- package/skills/web-design/claude-code/defs/app-motions/03-game.md +52 -0
- package/skills/web-design/claude-code/defs/app-motions/04-fintech.md +52 -0
- package/skills/web-design/claude-code/defs/app-motions/05-healthcare.md +52 -0
- package/skills/web-design/claude-code/defs/app-motions/06-ecommerce.md +55 -0
- package/skills/web-design/claude-code/defs/app-motions/07-education.md +54 -0
- package/skills/web-design/claude-code/defs/app-motions/08-creative.md +53 -0
- package/skills/web-design/claude-code/defs/app-motions/10-intensity-preset-motion.md +12 -0
- package/skills/web-design/claude-code/defs/app-motions.md +64 -0
- package/skills/web-design/claude-code/defs/component-specs/01-set-component.md +24 -0
- package/skills/web-design/claude-code/defs/component-specs/02-features-flow.md +51 -0
- package/skills/web-design/claude-code/defs/component-specs/03-system-visual.md +193 -0
- package/skills/web-design/claude-code/defs/component-specs/04-interaction-pattern-visual.md +61 -0
- package/skills/web-design/claude-code/defs/component-specs/domains/admin.md +55 -0
- package/skills/web-design/claude-code/defs/component-specs/domains/dashboard.md +60 -0
- package/skills/web-design/claude-code/defs/component-specs/domains/erp.md +68 -0
- package/skills/web-design/claude-code/defs/component-specs/domains/saas.md +65 -0
- package/skills/web-design/claude-code/defs/component-specs.md +24 -0
- package/skills/web-design/claude-code/defs/design-guide-sections.md +37 -0
- package/skills/web-design/claude-code/defs/desktop-layouts/01-utility.md +69 -0
- package/skills/web-design/claude-code/defs/desktop-layouts/02-data.md +71 -0
- package/skills/web-design/claude-code/defs/desktop-layouts/03-creative.md +73 -0
- package/skills/web-design/claude-code/defs/desktop-layouts/04-communication.md +71 -0
- package/skills/web-design/claude-code/defs/desktop-layouts/05-game.md +73 -0
- package/skills/web-design/claude-code/defs/desktop-layouts/06-business.md +74 -0
- package/skills/web-design/claude-code/defs/desktop-layouts.md +49 -0
- package/skills/web-design/claude-code/defs/desktop-motions/01-utility.md +56 -0
- package/skills/web-design/claude-code/defs/desktop-motions/02-data.md +60 -0
- package/skills/web-design/claude-code/defs/desktop-motions/03-creative.md +60 -0
- package/skills/web-design/claude-code/defs/desktop-motions/04-communication.md +57 -0
- package/skills/web-design/claude-code/defs/desktop-motions/05-game.md +55 -0
- package/skills/web-design/claude-code/defs/desktop-motions/06-business.md +52 -0
- package/skills/web-design/claude-code/defs/desktop-motions.md +75 -0
- package/skills/web-design/claude-code/defs/hybrid-layouts/01-web_mobile.md +81 -0
- package/skills/web-design/claude-code/defs/hybrid-layouts/02-web_desktop.md +78 -0
- package/skills/web-design/claude-code/defs/hybrid-layouts/03-mobile_desktop.md +79 -0
- package/skills/web-design/claude-code/defs/hybrid-layouts/04-all.md +81 -0
- package/skills/web-design/claude-code/defs/hybrid-layouts.md +49 -0
- package/skills/web-design/claude-code/defs/hybrid-motions/01-web_mobile.md +69 -0
- package/skills/web-design/claude-code/defs/hybrid-motions/02-web_desktop.md +69 -0
- package/skills/web-design/claude-code/defs/hybrid-motions/03-mobile_desktop.md +74 -0
- package/skills/web-design/claude-code/defs/hybrid-motions/04-all.md +96 -0
- package/skills/web-design/claude-code/defs/hybrid-motions/07-intensity-preset-motion.md +16 -0
- package/skills/web-design/claude-code/defs/hybrid-motions.md +65 -0
- package/skills/web-design/claude-code/defs/ia-patterns/01-management-dashboard.md +37 -0
- package/skills/web-design/claude-code/defs/ia-patterns/05-video.md +33 -0
- package/skills/web-design/claude-code/defs/ia-patterns/06-video_saas-saas.md +37 -0
- package/skills/web-design/claude-code/defs/ia-patterns.md +85 -0
- package/skills/web-design/claude-code/defs/icon-mappings/04-mapping-design-system.md +25 -0
- package/skills/web-design/claude-code/defs/icon-mappings.md +49 -0
- package/skills/web-design/claude-code/defs/icon-usage.md +56 -0
- package/skills/web-design/claude-code/defs/illustration-guide.md +44 -0
- package/skills/web-design/claude-code/defs/image-strategies/01-landing.md +76 -0
- package/skills/web-design/claude-code/defs/image-strategies/02-dashboard.md +51 -0
- package/skills/web-design/claude-code/defs/image-strategies/03-ecommerce.md +47 -0
- package/skills/web-design/claude-code/defs/image-strategies/04-blog.md +58 -0
- package/skills/web-design/claude-code/defs/image-strategies/05-saas.md +56 -0
- package/skills/web-design/claude-code/defs/image-strategies/06-portfolio.md +62 -0
- package/skills/web-design/claude-code/defs/image-strategies/08-strategy-common-image.md +57 -0
- package/skills/web-design/claude-code/defs/image-strategies.md +58 -0
- package/skills/web-design/claude-code/defs/seo-guide.md +79 -0
- package/skills/web-design/claude-code/defs/styles/02-style-list.md +421 -0
- package/skills/web-design/claude-code/defs/styles/03-custom-animation-keyframes.md +39 -0
- package/skills/web-design/claude-code/defs/styles.md +50 -0
- package/skills/web-design/claude-code/defs/tokens/01-token-format.md +75 -0
- package/skills/web-design/claude-code/defs/tokens/02-token-scope.md +251 -0
- package/skills/web-design/claude-code/defs/tokens.md +24 -0
- package/skills/web-design/claude-code/defs/video-compositions/01-composition-single.md +66 -0
- package/skills/web-design/claude-code/defs/video-compositions/02-composition-multi.md +66 -0
- package/skills/web-design/claude-code/defs/video-compositions/03-composition-parametric.md +81 -0
- package/skills/web-design/claude-code/defs/video-compositions.md +37 -0
- package/skills/web-design/claude-code/defs/video-motions/01-animation-basic.md +49 -0
- package/skills/web-design/claude-code/defs/video-motions/02-animation.md +52 -0
- package/skills/web-design/claude-code/defs/video-motions/03-reference.md +17 -0
- package/skills/web-design/claude-code/defs/video-motions/05-pattern-composition.md +61 -0
- package/skills/web-design/claude-code/defs/video-motions/06-transition-effects.md +49 -0
- package/skills/web-design/claude-code/defs/video-motions/07-audio-sync.md +29 -0
- package/skills/web-design/claude-code/defs/video-motions.md +55 -0
- package/skills/web-design/claude-code/defs/web-layouts/01-landing.md +101 -0
- package/skills/web-design/claude-code/defs/web-layouts/02-dashboard.md +85 -0
- package/skills/web-design/claude-code/defs/web-layouts/03-ecommerce.md +73 -0
- package/skills/web-design/claude-code/defs/web-layouts/04-blog.md +69 -0
- package/skills/web-design/claude-code/defs/web-layouts/05-saas.md +83 -0
- package/skills/web-design/claude-code/defs/web-layouts/06-portfolio.md +62 -0
- package/skills/web-design/claude-code/defs/web-layouts.md +38 -0
- package/skills/web-design/claude-code/defs/web-motions/01-landing.md +91 -0
- package/skills/web-design/claude-code/defs/web-motions/02-dashboard.md +55 -0
- package/skills/web-design/claude-code/defs/web-motions/03-ecommerce.md +52 -0
- package/skills/web-design/claude-code/defs/web-motions/04-blog.md +57 -0
- package/skills/web-design/claude-code/defs/web-motions/05-saas.md +49 -0
- package/skills/web-design/claude-code/defs/web-motions/06-portfolio.md +73 -0
- package/skills/web-design/claude-code/defs/web-motions/08-intensity-preset-motion.md +14 -0
- package/skills/web-design/claude-code/defs/web-motions.md +55 -0
- package/skills/web-design/claude-code/gen/gen-design-guide/01-project-overview.md +304 -0
- package/skills/web-design/claude-code/gen/gen-design-guide-interaction/01-interaction-motion.md +129 -0
- package/skills/web-design/claude-code/gen/gen-design-guide-interaction/04-project-video.md +69 -0
- package/skills/web-design/claude-code/gen/gen-design-guide-interaction.md +45 -0
- package/skills/web-design/claude-code/gen/gen-design-guide.md +43 -0
- package/skills/web-design/claude-code/gen/gen-tokens/01-generate-process.md +318 -0
- package/skills/web-design/claude-code/gen/gen-tokens/02-structure-output-file.md +31 -0
- package/skills/web-design/claude-code/gen/gen-tokens/03-connect-frontend.md +150 -0
- package/skills/web-design/claude-code/gen/gen-tokens.md +54 -0
- package/skills/web-design/claude-code/gen/gen-video.md +73 -0
- package/skills/web-design/claude-code/verify/verify-components.md +52 -0
- package/skills/web-design/claude-code/verify/verify-motions.md +74 -0
- package/skills/web-design/claude-code/verify/verify-pipeline.md +69 -0
- package/skills/web-design/claude-code/verify/verify-report.md +75 -0
- package/skills/web-design/claude-code/verify/verify-responsive.md +49 -0
- package/skills/web-design/claude-code/verify/verify-tokens.md +84 -0
- package/skills/test-skill/claude-code/SKILL.md +0 -7
- package/skills/test-skill/cursor/test-skill.md +0 -7
- package/skills/test-skill/openclaw/SKILL.md +0 -13
- package/skills/test-skill/skill.json +0 -6
|
@@ -0,0 +1,421 @@
|
|
|
1
|
+
# 스타일 목록
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### [A] 🌙 다크네온 (Dark Neon)
|
|
5
|
+
- **컨셉**: 어두운 배경 + 네온 포인트
|
|
6
|
+
- **Primary**: `#00f0ff` (Cyan Neon)
|
|
7
|
+
- **Background**: `#0a0a1a`
|
|
8
|
+
- **Accent**: `#ff00ff` (Magenta)
|
|
9
|
+
- **적합**: 테크, 나이트라이프, 크리에이티브
|
|
10
|
+
- **Hover**: `hover:shadow-[0_0_25px_rgba(0,240,255,0.5)]` 글로우 강화, `hover:border-cyan-400/60`, 버튼 `hover:bg-cyan-400/10`
|
|
11
|
+
- **Shadow**: 네온 글로우 `shadow-[0_0_15px_rgba(0,240,255,0.3)]`, 카드 `shadow-[0_0_30px_rgba(0,240,255,0.1)]`
|
|
12
|
+
- **Border**: `border border-cyan-400/30`, 호버 시 `/60`으로 밝아짐
|
|
13
|
+
- **BG Pattern**: CSS 그리드 라인 `bg-[linear-gradient(rgba(0,240,255,0.03)_1px,transparent_1px),linear-gradient(90deg,rgba(0,240,255,0.03)_1px,transparent_1px)]`, 라디얼 글로우 스팟
|
|
14
|
+
- **Decoration**: 네온 라인 구분선 (`h-px bg-gradient-to-r from-transparent via-cyan-400 to-transparent`), 글로잉 도트, `::after` 글로우 후광
|
|
15
|
+
- **Animation**: `animate-pulse` 글로우 요소, `animate-neon-flicker` (opacity 0.8↔1 반복), 등장 `opacity-0→1 + blur-sm→blur-0`
|
|
16
|
+
- **Gradient**: 텍스트 `bg-gradient-to-r from-cyan-400 to-fuchsia-500 bg-clip-text`, 배경 라디얼 `radial-gradient(circle at 30% 50%, rgba(0,240,255,0.08), transparent 60%)`
|
|
17
|
+
- **Image Interaction**: `opacity-20 hover:opacity-60 scale-100 hover:scale-105` + cyan glow overlay
|
|
18
|
+
- **Section Divider**: 직선 + 네온 글로우 라인 (`border-cyan-400/30 shadow-[0_0_10px_rgba(0,240,255,0.3)]`)
|
|
19
|
+
|
|
20
|
+
### [B] 🔷 파랑그라데이션 (Blue Gradient)
|
|
21
|
+
- **컨셉**: 블루 계열 그라데이션 중심
|
|
22
|
+
- **Primary**: `#3b82f6` → `#1d4ed8`
|
|
23
|
+
- **Background**: `#eff6ff`
|
|
24
|
+
- **Accent**: `#06b6d4`
|
|
25
|
+
- **적합**: SaaS, 기업, 금융
|
|
26
|
+
- **Hover**: `hover:-translate-y-1 hover:shadow-xl`, 버튼 `hover:bg-gradient-to-r hover:from-blue-600 hover:to-indigo-700`
|
|
27
|
+
- **Shadow**: 소프트 블루 틴트 `shadow-lg shadow-blue-500/10`, 호버 `shadow-xl shadow-blue-500/20`
|
|
28
|
+
- **Border**: `border-0` 또는 `border border-blue-100`, 그라데이션 바텀라인 `after:bg-gradient-to-r after:from-blue-500 after:to-indigo-500`
|
|
29
|
+
- **BG Pattern**: 그라데이션 메시 `bg-gradient-to-br from-blue-50 via-white to-indigo-50`, 섹션 분리 웨이브 SVG
|
|
30
|
+
- **Decoration**: 그라데이션 액센트 라인 (상단 `h-1 bg-gradient-to-r`), 필(pill) 뱃지 `rounded-full bg-blue-100 text-blue-700`
|
|
31
|
+
- **Animation**: `animate-gradient` (background-position 3s ease infinite), 등장 `fade-up` (translateY 20px→0 + opacity), 숫자 카운트업
|
|
32
|
+
- **Gradient**: 히어로 `bg-gradient-to-r from-blue-500 to-indigo-600`, CTA `bg-gradient-to-r from-blue-600 to-cyan-500`, 오버레이 `bg-gradient-to-b from-blue-900/80 to-transparent`
|
|
33
|
+
- **Image Interaction**: `opacity-90 hover:opacity-100 scale-100 hover:scale-[1.03]` + shadow lift
|
|
34
|
+
- **Section Divider**: 클린 1px 라인 (`border-blue-100`)
|
|
35
|
+
|
|
36
|
+
### [C] 🧊 3D카드 (3D Card)
|
|
37
|
+
- **컨셉**: 입체감 있는 카드 UI, 뉴모피즘 요소
|
|
38
|
+
- **Primary**: `#6366f1`
|
|
39
|
+
- **Background**: `#f1f5f9`
|
|
40
|
+
- **Shadow**: 레이어드 그림자
|
|
41
|
+
- **적합**: 포트폴리오, 프레젠테이션
|
|
42
|
+
- **Hover**: `hover:rotate-y-2 hover:rotate-x-2` 퍼스펙티브 틸트, `hover:shadow-2xl`, 마우스 트래킹 틸트 (JS)
|
|
43
|
+
- **Shadow**: 뉴모픽 `shadow-[6px_6px_12px_#d1d5db,-6px_-6px_12px_#ffffff]`, 호버 `shadow-[8px_8px_16px_#c8ccd0,-8px_-8px_16px_#ffffff]`
|
|
44
|
+
- **Border**: `border-0` (그림자가 경계 역할), 인셋 하이라이트 `ring-1 ring-white/50`
|
|
45
|
+
- **BG Pattern**: 미세 노이즈 텍스처 SVG, `bg-slate-100` 뉴트럴
|
|
46
|
+
- **Decoration**: 플로팅 레이어 (z-offset 카드 위 뱃지), 입체 카드 모서리 하이라이트, 깊이 표시 선
|
|
47
|
+
- **Animation**: 틸트 `transition-transform duration-300 ease-out`, 카드 등장 `scale-95→100 + shadow deepen`, 호버 시 살짝 부유
|
|
48
|
+
- **Gradient**: 카드 표면 미세 `bg-gradient-to-br from-white to-slate-50`, 뉴모픽 표면 `linear-gradient(145deg, #f0f0f3, #d9dbe2)`
|
|
49
|
+
- **Image Interaction**: `hover:rotate-y-2 hover:rotate-x-2` + perspective tilt + shadow-2xl
|
|
50
|
+
- **Section Divider**: 입체 그림자 라인 (`shadow-[0_1px_3px_rgba(0,0,0,0.1)]`)
|
|
51
|
+
|
|
52
|
+
### [D] ⚪ 미니멀화이트 (Minimal White)
|
|
53
|
+
- **컨셉**: 극단적 미니멀, 화이트 스페이스 활용
|
|
54
|
+
- **Primary**: `#18181b`
|
|
55
|
+
- **Background**: `#ffffff`
|
|
56
|
+
- **Accent**: `#3b82f6`
|
|
57
|
+
- **적합**: 블로그, 포트폴리오, 문서
|
|
58
|
+
- **Hover**: 밑줄 성장 `after:w-0 hover:after:w-full after:h-px after:bg-zinc-900`, 버튼 `hover:bg-zinc-100`
|
|
59
|
+
- **Shadow**: `shadow-sm` 또는 없음, 호버 시에만 `hover:shadow-md`
|
|
60
|
+
- **Border**: `border border-zinc-100`, 호버 `hover:border-zinc-300`
|
|
61
|
+
- **BG Pattern**: 순수 화이트, 단일 수평 액센트 라인 `h-px bg-zinc-200`
|
|
62
|
+
- **Decoration**: 거의 없음 — 타이포그래피 자체가 장식, 얇은 HR `border-t border-zinc-100`, 최소 도트 `·`
|
|
63
|
+
- **Animation**: 오파시티 페이드만 `transition-opacity duration-200`, `clip-path: inset(0 100% 0 0)→inset(0)` 텍스트 리빌
|
|
64
|
+
- **Gradient**: 없음 (단색만 사용), 유일한 예외: 블루 액센트 CTA 배경
|
|
65
|
+
- **Image Interaction**: `grayscale hover:grayscale-0 opacity-80 hover:opacity-100`
|
|
66
|
+
- **Section Divider**: 극세 라인 (`border-zinc-100`) 또는 여백만
|
|
67
|
+
|
|
68
|
+
### [E] 🫧 글래스모피즘 (Glassmorphism)
|
|
69
|
+
- **컨셉**: 반투명 유리 효과, 블러 배경
|
|
70
|
+
- **Primary**: `rgba(255,255,255,0.25)`
|
|
71
|
+
- **Background**: 그라데이션 + backdrop-blur
|
|
72
|
+
- **Border**: `rgba(255,255,255,0.18)`
|
|
73
|
+
- **적합**: 랜딩페이지, 모던 앱
|
|
74
|
+
- **Hover**: 불투명도 증가 `hover:bg-white/35`, 블러 강화 `hover:backdrop-blur-xl`, 보더 밝아짐 `hover:border-white/30`
|
|
75
|
+
- **Shadow**: `shadow-lg shadow-black/5` 컬러 틴트, 글래스 패널 `shadow-[0_8px_32px_rgba(31,38,135,0.15)]`
|
|
76
|
+
- **Border**: `border border-white/20`, 호버 `/30`, 인너 글로우 `ring-1 ring-inset ring-white/10`
|
|
77
|
+
- **BG Pattern**: 메시 그라데이션 배경 (3~4색 blob), 블러 레이어, `bg-gradient-to-br from-violet-500/20 via-fuchsia-500/10 to-cyan-500/20`
|
|
78
|
+
- **Decoration**: 프로스트 패널 오버레이, 라이트 리크 (밝은 원형 블러), 글래스 경계 하이라이트 `bg-gradient-to-b from-white/25 to-white/5`
|
|
79
|
+
- **Animation**: 블러인 `backdrop-blur-0→backdrop-blur-md`, 오파시티 시프트 `opacity-0→1`, 부드러운 부유 `animate-float` (translateY ±8px, 6s ease)
|
|
80
|
+
- **Gradient**: 배경 메시 `bg-[radial-gradient(at_40%_20%,rgb(139,92,246,0.3)_0,transparent_50%),radial-gradient(at_80%_80%,rgb(6,182,212,0.2)_0,transparent_50%)]`, 패널 `bg-gradient-to-b from-white/20 to-white/5`
|
|
81
|
+
- **Image Interaction**: `blur-sm hover:blur-0 opacity-30 hover:opacity-50` + glass overlay
|
|
82
|
+
- **Section Divider**: 반투명 라인 (`border-white/10`)
|
|
83
|
+
|
|
84
|
+
### [F] 🌈 비비드컬러풀 (Vivid Colorful)
|
|
85
|
+
- **컨셉**: 밝고 대담한 멀티 컬러
|
|
86
|
+
- **Primary**: `#f43f5e`
|
|
87
|
+
- **Secondary**: `#8b5cf6`
|
|
88
|
+
- **Tertiary**: `#06b6d4`
|
|
89
|
+
- **적합**: 크리에이티브, 교육, 엔터테인먼트
|
|
90
|
+
- **Hover**: `hover:scale-105 hover:rotate-1`, 버튼 `hover:-translate-y-1`, 컬러 시프트 `hover:bg-violet-500` (primary→secondary)
|
|
91
|
+
- **Shadow**: 컬러 섀도우 `shadow-lg shadow-rose-500/20`, 호버 `shadow-xl shadow-violet-500/25`
|
|
92
|
+
- **Border**: `border-2 border-current` (요소별 컬러 다름), 레인보우 보더 `bg-gradient-to-r from-rose-500 via-violet-500 to-cyan-500 p-[2px]`
|
|
93
|
+
- **BG Pattern**: 추상 컬러 블롭 (CSS blob), 그라데이션 스팟 `bg-[radial-gradient(circle_at_20%_80%,rgba(244,63,94,0.15),transparent_40%)]`
|
|
94
|
+
- **Decoration**: 컬러 도트 그리드, 물결 라인 SVG, 스티커 뱃지 `rotate-[-3deg] rounded-lg`, 느낌표 아이콘
|
|
95
|
+
- **Animation**: 바운스인 `animate-bounce-in` (scale 0→1.1→1), 위글 `animate-wiggle` (rotate ±3deg), 컬러 사이클 `animate-color-shift`
|
|
96
|
+
- **Gradient**: 멀티스톱 `bg-gradient-to-r from-rose-500 via-violet-500 to-cyan-500`, 듀오톤 오버레이, 텍스트 레인보우
|
|
97
|
+
- **Image Interaction**: `hover:scale-105 hover:rotate-1` + color shift overlay
|
|
98
|
+
- **Section Divider**: 웨이브 SVG (`fill-rose-500/fill-violet-500` 멀티 컬러)
|
|
99
|
+
|
|
100
|
+
### [G] 🍃 자연/오가닉 (Nature/Organic)
|
|
101
|
+
- **컨셉**: 자연 색감, 유기적 형태
|
|
102
|
+
- **Primary**: `#16a34a`
|
|
103
|
+
- **Background**: `#f0fdf4`
|
|
104
|
+
- **Accent**: `#a16207`
|
|
105
|
+
- **적합**: 환경, 건강, 식품
|
|
106
|
+
- **Hover**: 부드러운 `hover:scale-[1.02]`, 잎 플로트 느낌 `hover:-translate-y-0.5`, `hover:shadow-md`
|
|
107
|
+
- **Shadow**: 따뜻한 소프트 `shadow-md shadow-green-900/5`, 카드 `shadow-sm shadow-emerald-100`
|
|
108
|
+
- **Border**: `border border-green-200 rounded-2xl`, 유기적 둥근 모서리 `rounded-[20px]`
|
|
109
|
+
- **BG Pattern**: 유기적 블롭 형태 (border-radius 30% 70% 70% 30%), 리프 패턴 SVG, 웨이브 구분선 SVG
|
|
110
|
+
- **Decoration**: 잎 아이콘 장식, 덩굴 디바이더, 유기적 블롭 배경 셰이프, 어스톤 라인
|
|
111
|
+
- **Animation**: 부드러운 흔들림 `animate-sway` (rotate ±2deg, 4s), 성장 `scale-0→1` (500ms), 호흡 `animate-breathe` (scale 1↔1.03, 4s)
|
|
112
|
+
- **Gradient**: `bg-gradient-to-br from-green-50 to-amber-50`, 나뭇잎 `from-emerald-400 to-green-600`, 일출 `from-amber-200 to-green-200`
|
|
113
|
+
- **Image Interaction**: `hover:scale-[1.02] opacity-70 hover:opacity-90` + warm overlay
|
|
114
|
+
- **Section Divider**: 유기적 wave SVG (`fill-green-100`)
|
|
115
|
+
|
|
116
|
+
### [H] 💜 보라그라데이션 (Purple Gradient)
|
|
117
|
+
- **컨셉**: 퍼플~핑크 그라데이션
|
|
118
|
+
- **Primary**: `#7c3aed` → `#db2777`
|
|
119
|
+
- **Background**: `#faf5ff`
|
|
120
|
+
- **Accent**: `#c084fc`
|
|
121
|
+
- **적합**: 뷰티, 패션, 크리에이티브
|
|
122
|
+
- **Hover**: 그라데이션 시프트 `hover:bg-[position:100%]`, 퍼플 글로우 `hover:shadow-[0_0_20px_rgba(124,58,237,0.2)]`
|
|
123
|
+
- **Shadow**: `shadow-lg shadow-purple-500/10`, 호버 `shadow-xl shadow-fuchsia-500/15`
|
|
124
|
+
- **Border**: `border-0` 또는 그라데이션 보더 `bg-gradient-to-r from-violet-500 to-pink-500 p-[1px]`
|
|
125
|
+
- **BG Pattern**: 퍼플-핑크 메시 그라데이션, 부드러운 오브 형태 배경, `radial-gradient(circle at 70% 30%, rgba(192,132,252,0.15), transparent)`
|
|
126
|
+
- **Decoration**: 그라데이션 액센트 라인, 스파클 도트 `✦`, 플로팅 오브 (퍼플 블러 원)
|
|
127
|
+
- **Animation**: `animate-gradient-flow` (background-position 4s), 시머 이펙트 `animate-shimmer` (좌→우 빛 반사), 부드러운 등장 fade-up
|
|
128
|
+
- **Gradient**: 히어로 `from-violet-600 via-purple-500 to-pink-500`, 텍스트 `from-violet-400 to-fuchsia-400`, 버튼 `from-purple-600 to-pink-600`
|
|
129
|
+
- **Image Interaction**: `hover:bg-gradient-to-r hover:from-transparent hover:via-purple-400/10 hover:to-transparent` shine sweep
|
|
130
|
+
- **Section Divider**: 그라데이션 라인 (`bg-gradient-to-r from-transparent via-purple-300 to-transparent h-px`)
|
|
131
|
+
|
|
132
|
+
### [I] 🎯 포커스드미니멀 (Focused Minimal)
|
|
133
|
+
- **컨셉**: 기능 중심 미니멀, 강한 CTA
|
|
134
|
+
- **Primary**: `#2563eb`
|
|
135
|
+
- **Background**: `#f8fafc`
|
|
136
|
+
- **CTA**: `#dc2626`
|
|
137
|
+
- **적합**: SaaS, 프로덕티비티, 비즈니스
|
|
138
|
+
- **Hover**: CTA `hover:scale-105 hover:shadow-lg`, 일반 `hover:bg-slate-50`, 링크 `hover:text-blue-700 hover:underline`
|
|
139
|
+
- **Shadow**: CTA만 강조 `shadow-md shadow-blue-500/20`, 일반 카드 `shadow-sm`
|
|
140
|
+
- **Border**: `border border-slate-200`, CTA 전용 `border-2 border-blue-600`, 포커스 `ring-2 ring-blue-500`
|
|
141
|
+
- **BG Pattern**: 깨끗한 화이트, 매우 미묘한 도트 그리드 (CTA 영역 배경만), `bg-slate-50` 영역 구분
|
|
142
|
+
- **Decoration**: CTA 화살표 애니메이션 `→`, 포커스 링, 상태 인디케이터 도트, 최소한의 아이콘 뱃지
|
|
143
|
+
- **Animation**: CTA 펄스 `animate-pulse-subtle` (scale 1↔1.02, 2s), 부드러운 포커스 트랜지션 `transition-all duration-200`, 스크롤 `fade-in`
|
|
144
|
+
- **Gradient**: 없음 (단색 사용), CTA 전용 `bg-gradient-to-r from-blue-600 to-blue-700`, 히어로 미묘한 `from-slate-50 to-blue-50/50`
|
|
145
|
+
- **Image Interaction**: `hover:scale-105 hover:shadow-lg` + CTA 글로우
|
|
146
|
+
- **Section Divider**: 액센트 컬러 라인 (`border-b-2 border-blue-600`)
|
|
147
|
+
|
|
148
|
+
### [J] 📱 모바일퍼스트 (Mobile First)
|
|
149
|
+
- **컨셉**: 모바일 최적화 UI 패턴
|
|
150
|
+
- **Primary**: `#0ea5e9`
|
|
151
|
+
- **Background**: `#ffffff`
|
|
152
|
+
- **Navigation**: 바텀 탭 중심
|
|
153
|
+
- **적합**: 모바일 앱, PWA
|
|
154
|
+
- **Hover**: 탭 `active:scale-95` (터치 피드백), 카드 `hover:bg-sky-50`, 버튼 `active:bg-sky-600`
|
|
155
|
+
- **Shadow**: `shadow-sm` 카드, `shadow-lg` 바텀시트/드롭다운, 네비바 `shadow-[0_-2px_10px_rgba(0,0,0,0.05)]`
|
|
156
|
+
- **Border**: `border border-slate-100`, 구분 `divide-y divide-slate-100`
|
|
157
|
+
- **BG Pattern**: 시스템 UI 배경 `bg-slate-50`, 그룹 카드 `bg-white rounded-xl`
|
|
158
|
+
- **Decoration**: 둥근 필 요소 `rounded-full`, 아이콘 하이라이트 `bg-sky-100 p-2 rounded-xl`, 인디케이터 도트
|
|
159
|
+
- **Animation**: 스프링 탭 `150ms ease`, 슬라이드업 시트 `transform translateY(100%)→0`, 탭 전환 `fade + translateX`
|
|
160
|
+
- **Gradient**: 없음 또는 미묘한 `from-white to-slate-50`, 진행바 `from-sky-400 to-sky-600`
|
|
161
|
+
- **Image Interaction**: `active:scale-95` (터치 피드백) + subtle shadow
|
|
162
|
+
- **Section Divider**: 얇은 구분선 (`border-slate-100 divide-y`)
|
|
163
|
+
|
|
164
|
+
### [K] 📊 대시보드 (Dashboard)
|
|
165
|
+
- **컨셉**: 데이터 중심, 정보 밀도 높음
|
|
166
|
+
- **Primary**: `#3b82f6`
|
|
167
|
+
- **Background**: `#0f172a` (Dark) / `#f1f5f9` (Light)
|
|
168
|
+
- **Chart**: 멀티 컬러 팔레트
|
|
169
|
+
- **적합**: 관리자 패널, 분석 도구
|
|
170
|
+
- **Hover**: 행 `hover:bg-slate-100 dark:hover:bg-slate-800`, 카드 `hover:border-blue-400`, KPI `hover:scale-[1.02]`
|
|
171
|
+
- **Shadow**: `shadow-sm` 카드, `shadow-lg` 드롭다운/팝오버, 사이드바 `shadow-[4px_0_6px_rgba(0,0,0,0.05)]`
|
|
172
|
+
- **Border**: `border border-slate-200 dark:border-slate-700`, 테이블 `divide-y divide-slate-200`
|
|
173
|
+
- **BG Pattern**: 차트 영역 미세 도트 그리드, 사이드바 다른 톤 `bg-slate-900`, 섹션 `bg-white dark:bg-slate-800 rounded-lg`
|
|
174
|
+
- **Decoration**: 상태 인디케이터 도트 (`w-2 h-2 rounded-full bg-green-500`), 미니 스파크라인 차트, 뱃지 카운터
|
|
175
|
+
- **Animation**: 숫자 카운트업 (JS), 차트 그리기 `stroke-dashoffset`, 스켈레톤 시머 `animate-shimmer`, 진행바 채움
|
|
176
|
+
- **Gradient**: 차트 영역 `fill-opacity gradient`, KPI 카드 `bg-gradient-to-br from-blue-500 to-blue-600 text-white`, 사이드바 `from-slate-900 to-slate-800`
|
|
177
|
+
- **Image Interaction**: `hover:border-blue-400 hover:scale-[1.02]` KPI 카드 강조
|
|
178
|
+
- **Section Divider**: 서브틀 라인 (`border-slate-200 dark:border-slate-700`)
|
|
179
|
+
|
|
180
|
+
### [L] 🎪 크리에이티브 (Creative)
|
|
181
|
+
- **컨셉**: 비정형 레이아웃, 실험적
|
|
182
|
+
- **Primary**: `#ec4899`
|
|
183
|
+
- **Background**: `#fdf2f8`
|
|
184
|
+
- **Accent**: `#eab308`
|
|
185
|
+
- **적합**: 에이전시, 디자인 스튜디오
|
|
186
|
+
- **Hover**: `hover:rotate-2 hover:scale-110`, 드라마틱 `hover:-translate-y-2 hover:shadow-[8px_8px_0_0_theme(colors.pink.500)]`
|
|
187
|
+
- **Shadow**: 컬러 오프셋 `shadow-[6px_6px_0_0_#ec4899]`, 호버 `shadow-[10px_10px_0_0_#eab308]`
|
|
188
|
+
- **Border**: `border-2 border-pink-400` 또는 `border-4` 굵은 변형, 불규칙 보더 (각 면 다른 색)
|
|
189
|
+
- **BG Pattern**: 하프톤 도트 `radial-gradient(circle, #ec4899 1px, transparent 1px) 0 0/20px 20px`, 대각선 스트라이프, 혼합 텍스처
|
|
190
|
+
- **Decoration**: 화살표 두들, 손그림 원 SVG, 스티커 뱃지 `rotate-[-5deg]`, 별표 `★`, 밑줄 강조 squiggly line
|
|
191
|
+
- **Animation**: 탄력 스프링 `cubic-bezier(0.34,1.56,0.64,1)`, 엘라스틱 스냅, 위글 `animate-wiggle`, 플레이풀 바운스
|
|
192
|
+
- **Gradient**: 와일드 멀티컬러 `from-pink-500 via-yellow-400 to-cyan-400`, 듀오톤 이미지 오버레이, 네온 `from-fuchsia-500 to-yellow-500`
|
|
193
|
+
- **Image Interaction**: `hover:rotate-2 hover:scale-110` + 컬러 오프셋 shadow shift
|
|
194
|
+
- **Section Divider**: 두꺼운 컬러 라인 (`border-4 border-pink-400`) 또는 도트 패턴
|
|
195
|
+
|
|
196
|
+
### [M] 💼 엔터프라이즈 (Enterprise)
|
|
197
|
+
- **컨셉**: 보수적, 신뢰감, 체계적
|
|
198
|
+
- **Primary**: `#1e40af`
|
|
199
|
+
- **Background**: `#f8fafc`
|
|
200
|
+
- **Accent**: `#059669`
|
|
201
|
+
- **적합**: B2B, 금융, 의료, 법률
|
|
202
|
+
- **Hover**: 미묘한 `hover:bg-slate-50`, 밑줄 성장 `hover:underline`, 행 `hover:bg-blue-50/50`
|
|
203
|
+
- **Shadow**: `shadow-sm` 일관 사용, 모달만 `shadow-xl`, 드롭다운 `shadow-md`
|
|
204
|
+
- **Border**: `border border-slate-200` 균일, 테이블 `divide-y divide-slate-200`, 활성 `border-l-4 border-blue-800`
|
|
205
|
+
- **BG Pattern**: 깨끗한 화이트, 헤더 미묘한 스트라이프 `bg-slate-50`, 섹션 교대 배경
|
|
206
|
+
- **Decoration**: 아이콘 뱃지, 상태 필 `rounded-full px-3`, 최소한의 로고마크, 구분선 `border-t border-slate-100`
|
|
207
|
+
- **Animation**: `transition-all duration-200 ease-in-out` 전체, 바운스 효과 없음, 페이드 + 슬라이드만 사용
|
|
208
|
+
- **Gradient**: 헤더만 `bg-gradient-to-r from-blue-900 to-blue-800`, 본문은 단색, CTA `from-blue-800 to-blue-700`
|
|
209
|
+
- **Image Interaction**: `hover:bg-slate-50 hover:shadow-sm` 미묘한 변화
|
|
210
|
+
- **Section Divider**: 균일한 1px (`border-slate-200`)
|
|
211
|
+
|
|
212
|
+
### [N] 🎮 게이미피케이션 (Gamification)
|
|
213
|
+
- **컨셉**: 게임 요소, 인터랙티브
|
|
214
|
+
- **Primary**: `#f59e0b`
|
|
215
|
+
- **Background**: `#1a1a2e`
|
|
216
|
+
- **Accent**: `#10b981`
|
|
217
|
+
- **적합**: 교육, 피트니스, 게임
|
|
218
|
+
- **Hover**: `hover:scale-105` + 글로우 `hover:shadow-[0_0_20px_rgba(245,158,11,0.4)]`, "파워업" 이펙트, 버튼 `hover:-translate-y-1`
|
|
219
|
+
- **Shadow**: 네온 글로우 `shadow-[0_0_15px_rgba(245,158,11,0.3)]`, 카드 `shadow-lg shadow-amber-500/10`
|
|
220
|
+
- **Border**: `border-2 border-amber-400/50`, 레벨업 보더 `border-emerald-400/50`, XP바 `rounded-full`
|
|
221
|
+
- **BG Pattern**: 별밭 파티클 CSS, 헥사곤 그리드 `polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%)`, 레벨 진행 배경
|
|
222
|
+
- **Decoration**: XP 바, 어치브먼트 뱃지 `🏆`, 별점 `⭐`, 레벨 넘버, 콤보 카운터, 랭킹 아이콘
|
|
223
|
+
- **Animation**: 바운스인 `cubic-bezier(0.34,1.56,0.64,1)`, 에러 셰이크 `animate-shake`, 컨페티 버스트, 프로그레스 필 `width 0→100%`
|
|
224
|
+
- **Gradient**: 파워 `from-amber-400 to-emerald-400`, 레벨업 `from-yellow-400 via-amber-500 to-orange-500`, 배경 `from-indigo-950 to-slate-900`
|
|
225
|
+
- **Image Interaction**: `hover:scale-105 hover:shadow-[0_0_20px_rgba(245,158,11,0.4)]` 파워업 글로우
|
|
226
|
+
- **Section Divider**: 레벨 프로그레스 라인 (`bg-gradient-to-r from-amber-400 via-emerald-400 to-cyan-400 h-1 rounded-full`)
|
|
227
|
+
|
|
228
|
+
### [O] 🌅 선셋/웜톤 (Sunset/Warm)
|
|
229
|
+
- **컨셉**: 따뜻한 오렌지~옐로우 톤
|
|
230
|
+
- **Primary**: `#f97316`
|
|
231
|
+
- **Background**: `#fffbeb`
|
|
232
|
+
- **Accent**: `#ef4444`
|
|
233
|
+
- **적합**: 여행, 푸드, 라이프스타일
|
|
234
|
+
- **Hover**: 웜 글로우 강화 `hover:shadow-lg hover:shadow-orange-500/15`, `-translate-y-1`, 버튼 `hover:bg-orange-600`
|
|
235
|
+
- **Shadow**: `shadow-lg shadow-orange-500/10`, 카드 `shadow-md shadow-amber-100`
|
|
236
|
+
- **Border**: `border border-orange-200`, `border-amber-100`, 호버 `hover:border-orange-300`
|
|
237
|
+
- **BG Pattern**: 웜 그라데이션 스카이 `bg-gradient-to-b from-amber-50 to-orange-50`, 라디얼 선라이즈 `radial-gradient(ellipse at 50% 0%, rgba(249,115,22,0.1), transparent 60%)`
|
|
238
|
+
- **Decoration**: 태양/웨이브 아이콘, 웜 액센트 라인 `bg-gradient-to-r from-orange-400 to-rose-400`, 라운드 장식
|
|
239
|
+
- **Animation**: 웜 페이드인 `opacity + translateY 20px→0 600ms ease`, 부드러운 라이즈, 선셋 그라데이션 시프트 `background-position 8s`
|
|
240
|
+
- **Gradient**: 히어로 `from-orange-400 to-rose-500`, CTA `from-amber-500 to-orange-600`, 텍스트 `from-orange-500 to-red-500`
|
|
241
|
+
- **Image Interaction**: `hover:shadow-lg hover:shadow-orange-500/15 hover:-translate-y-1` 웜 글로우
|
|
242
|
+
- **Section Divider**: 따뜻한 그라데이션 라인 (`bg-gradient-to-r from-orange-200 via-amber-200 to-orange-200 h-px`)
|
|
243
|
+
|
|
244
|
+
### [P] 🧊 아이스/쿨톤 (Ice/Cool)
|
|
245
|
+
- **컨셉**: 차가운 블루~민트 톤
|
|
246
|
+
- **Primary**: `#06b6d4`
|
|
247
|
+
- **Background**: `#ecfeff`
|
|
248
|
+
- **Accent**: `#8b5cf6`
|
|
249
|
+
- **적합**: 의료, 핀테크, 테크
|
|
250
|
+
- **Hover**: 프로스트 강화 `hover:bg-cyan-50`, 쿨 글로우 `hover:shadow-[0_0_15px_rgba(6,182,212,0.15)]`
|
|
251
|
+
- **Shadow**: `shadow-lg shadow-cyan-500/10`, 프로스트 `shadow-[0_4px_24px_rgba(6,182,212,0.08)]`
|
|
252
|
+
- **Border**: `border border-cyan-200`, `ring-1 ring-cyan-100`
|
|
253
|
+
- **BG Pattern**: 크리스탈 패싯 패턴 (다각형 SVG), 프로스트 텍스처, 쿨 메시 `bg-gradient-to-br from-cyan-50 via-white to-violet-50`
|
|
254
|
+
- **Decoration**: 눈꽃/크리스탈 요소, 쿨 액센트 도트, 얼음 라인 디바이더 `bg-gradient-to-r from-transparent via-cyan-300 to-transparent`
|
|
255
|
+
- **Animation**: 쿨 시머 `animate-shimmer-cool` (좌→우 하이라이트), 크리스탈라이즈인 `clip-path polygon reveal`, 미세 부유 `translateY ±4px 5s`
|
|
256
|
+
- **Gradient**: 히어로 `from-cyan-400 to-violet-400`, 프로스트 `from-sky-200 to-cyan-100`, 텍스트 `from-cyan-500 to-blue-500`
|
|
257
|
+
- **Image Interaction**: `hover:bg-cyan-50 hover:shadow-[0_0_15px_rgba(6,182,212,0.15)]` 쿨 프로스트
|
|
258
|
+
- **Section Divider**: 쿨 그라데이션 라인 (`bg-gradient-to-r from-transparent via-cyan-300 to-transparent h-px`)
|
|
259
|
+
|
|
260
|
+
### [Q] 🖤 모노크롬 (Monochrome)
|
|
261
|
+
- **컨셉**: 흑백 + 회색 톤, 강한 타이포그래피
|
|
262
|
+
- **Primary**: `#171717`
|
|
263
|
+
- **Background**: `#fafafa`
|
|
264
|
+
- **Accent**: `#737373`
|
|
265
|
+
- **적합**: 럭셔리, 패션, 포트폴리오
|
|
266
|
+
- **Hover**: 인버트 `hover:bg-neutral-900 hover:text-white`, 보더 굵어짐 `hover:border-neutral-900`, 밑줄 `hover:underline underline-offset-4`
|
|
267
|
+
- **Shadow**: 하드 BW `shadow-[4px_4px_0_0_#171717]`, 호버 `shadow-[6px_6px_0_0_#171717]`, 또는 없음
|
|
268
|
+
- **Border**: `border-2 border-neutral-900`, 씬 변형 `border border-neutral-200`, 굵은 액센트 `border-b-4`
|
|
269
|
+
- **BG Pattern**: 순수 화이트 또는 미세 도트 `bg-[radial-gradient(#d4d4d4_1px,transparent_1px)] bg-[length:20px_20px]`, 흑백 대비 섹션
|
|
270
|
+
- **Decoration**: 볼드 타이포그래피가 장식 역할, 굵은 HR `h-1 bg-neutral-900`, 숫자 레이블 `font-mono text-6xl font-bold text-neutral-200`
|
|
271
|
+
- **Animation**: 미니멀 (`opacity`, `clip-path inset reveal`만 사용), 드라마틱 텍스트 리빌 `overflow-hidden + translateY`
|
|
272
|
+
- **Gradient**: 없음 (순수 블랙, 화이트, 그레이만), 유일 예외: 호버 시 반전 효과
|
|
273
|
+
- **Image Interaction**: `hover:invert hover:bg-neutral-900 hover:text-white` 인버트 전환
|
|
274
|
+
- **Section Divider**: 굵은 흑백 라인 (`border-2 border-neutral-900`)
|
|
275
|
+
|
|
276
|
+
### [R] 🎭 레트로/80s (Retro/80s)
|
|
277
|
+
- **컨셉**: 80년대 레트로, 그리드 패턴
|
|
278
|
+
- **Primary**: `#e879f9`
|
|
279
|
+
- **Background**: `#1e1b4b`
|
|
280
|
+
- **Accent**: `#facc15`
|
|
281
|
+
- **적합**: 엔터테인먼트, 음악, 이벤트
|
|
282
|
+
- **Hover**: 네온 플리커 `hover:animate-flicker`, `hover:scale-105`, 레트로 글로우 `hover:shadow-[0_0_30px_rgba(232,121,249,0.4)]`
|
|
283
|
+
- **Shadow**: `shadow-[0_0_20px_rgba(232,121,249,0.3)]`, 텍스트 `text-shadow: 0 0 10px rgba(232,121,249,0.5)`
|
|
284
|
+
- **Border**: `border-2 border-fuchsia-400/50`, 네온 사인 `border-4 border-fuchsia-400 rounded-none`
|
|
285
|
+
- **BG Pattern**: 퍼스펙티브 그리드 라인 `linear-gradient(transparent 95%, rgba(232,121,249,0.1) 95%)`, CRT 스캔라인 `repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0,0,0,0.1) 2px, rgba(0,0,0,0.1) 4px)`
|
|
286
|
+
- **Decoration**: 네온 사인 텍스트, 80s 셰이프 (삼각형, 지그재그, 팜 트리 실루엣), 레트로 뱃지 `RADICAL!`, 별 `✶`
|
|
287
|
+
- **Animation**: VHS 글리치 `animate-glitch` (translate + clip-path 빠른 전환), 네온 블링크 `animate-neon-blink` (opacity 1→0.7→1 불규칙), 레트로 페이드
|
|
288
|
+
- **Gradient**: 레트로 스펙트럼 `from-fuchsia-500 via-violet-500 to-cyan-400`, 선셋 `from-yellow-400 via-rose-500 to-purple-600`, 크롬 `from-fuchsia-400 to-yellow-300`
|
|
289
|
+
- **Image Interaction**: `hover:animate-flicker hover:scale-105` 네온 플리커
|
|
290
|
+
- **Section Divider**: 네온 글로우 라인 (`border-fuchsia-400/50 shadow-[0_0_10px_rgba(232,121,249,0.3)]`)
|
|
291
|
+
|
|
292
|
+
### [S] 🌸 파스텔 (Pastel)
|
|
293
|
+
- **컨셉**: 부드러운 파스텔 톤
|
|
294
|
+
- **Primary**: `#f9a8d4`
|
|
295
|
+
- **Background**: `#fdf2f8`
|
|
296
|
+
- **Accent**: `#a78bfa`
|
|
297
|
+
- **적합**: 뷰티, 웰니스, 키즈
|
|
298
|
+
- **Hover**: 미묘한 리프트 `hover:-translate-y-0.5`, 파스텔 어둡게 `hover:bg-pink-200/50`, 부드러운 `hover:shadow-md`
|
|
299
|
+
- **Shadow**: `shadow-md shadow-pink-200/40`, 카드 `shadow-sm shadow-pink-100/50`
|
|
300
|
+
- **Border**: `border border-pink-200/50` 또는 `border-0` (섀도우만), 둥근 `rounded-2xl`
|
|
301
|
+
- **BG Pattern**: 소프트 클라우드 형태 (큰 border-radius blob), 수채화 텍스처, 파스텔 그라데이션 `from-pink-50 via-purple-50 to-blue-50`
|
|
302
|
+
- **Decoration**: 라운드 버블 셰이프, 꽃/하트 액센트, 소프트 리본, 둥근 뱃지 `rounded-full bg-pink-100`
|
|
303
|
+
- **Animation**: 부드러운 부유 `animate-float-gentle` (translateY ±4px 5s), 소프트 바운스 `ease-out 500ms`, 드리미 페이드 `opacity 0→1 800ms`
|
|
304
|
+
- **Gradient**: `from-pink-200 to-purple-200`, 파스텔 레인보우 `from-pink-100 via-purple-100 to-blue-100`, 텍스트 `from-pink-400 to-violet-400`
|
|
305
|
+
- **Image Interaction**: `hover:-translate-y-0.5 hover:shadow-md` 미묘한 리프트
|
|
306
|
+
- **Section Divider**: 파스텔 라인 (`border-pink-200/50`) 또는 없음
|
|
307
|
+
|
|
308
|
+
### [T] 🔥 파이어/레드 (Fire/Red)
|
|
309
|
+
- **컨셉**: 강렬한 레드~오렌지
|
|
310
|
+
- **Primary**: `#dc2626`
|
|
311
|
+
- **Background**: `#fef2f2`
|
|
312
|
+
- **Accent**: `#f97316`
|
|
313
|
+
- **적합**: 푸드, 스포츠, 이커머스
|
|
314
|
+
- **Hover**: 플레임 강화 `hover:scale-105 hover:shadow-lg`, 레드 글로우 `hover:shadow-red-500/20`, 버튼 `hover:bg-red-700`
|
|
315
|
+
- **Shadow**: `shadow-lg shadow-red-500/15`, 카드 `shadow-md shadow-red-100`, 호버 `shadow-xl shadow-red-500/25`
|
|
316
|
+
- **Border**: `border-2 border-red-500`, 얇은 변형 `border border-red-200`, 액센트 `border-l-4 border-red-500`
|
|
317
|
+
- **BG Pattern**: 엠버 파티클 (JS/CSS), 히트 시머 효과, 대각선 스트라이프 `repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(220,38,38,0.03) 10px, rgba(220,38,38,0.03) 20px)`
|
|
318
|
+
- **Decoration**: 플레임 아이콘 `🔥`, 슬래시 액센트, 볼드 느낌표, 컷아웃 셰이프, 스피드 라인
|
|
319
|
+
- **Animation**: 플리커 `animate-flame-flicker` (opacity 0.9↔1 + scale 0.99↔1.01), 공격적 슬라이드인 `translateX -100%→0 300ms`, 호버 펄스
|
|
320
|
+
- **Gradient**: 파이어 `from-red-500 to-orange-400`, CTA `from-red-600 to-red-500`, 히어로 `from-red-600 via-orange-500 to-amber-400`
|
|
321
|
+
- **Image Interaction**: `hover:scale-105 hover:shadow-lg hover:shadow-red-500/20` 플레임 강화
|
|
322
|
+
- **Section Divider**: 굵은 액센트 라인 (`border-b-4 border-red-500`)
|
|
323
|
+
|
|
324
|
+
### [U] 🏔️ 노르딕 (Nordic)
|
|
325
|
+
- **컨셉**: 스칸디나비안 미니멀, 자연 소재감
|
|
326
|
+
- **Primary**: `#475569`
|
|
327
|
+
- **Background**: `#f8fafc`
|
|
328
|
+
- **Accent**: `#0d9488`
|
|
329
|
+
- **적합**: 인테리어, 가구, 럭셔리
|
|
330
|
+
- **Hover**: 매우 미묘한 `hover:scale-[1.01]`, 뮤트 배경 시프트 `hover:bg-slate-100`, `hover:shadow-sm`
|
|
331
|
+
- **Shadow**: `shadow-sm shadow-slate-200/50`, 카드 `shadow-[0_1px_3px_rgba(71,85,105,0.06)]`
|
|
332
|
+
- **Border**: `border border-slate-200`, 둥근 `rounded-xl`, 미묘한 `border-slate-150`
|
|
333
|
+
- **BG Pattern**: 린넨 텍스처 (미세 노이즈), 우드 그레인 미묘함, 넓은 여백 `bg-slate-50` 교대
|
|
334
|
+
- **Decoration**: 미니멀 (얇은 라인 디바이더만), 뮤트 아이콘 `text-slate-400`, 깨끗한 간격
|
|
335
|
+
- **Animation**: 느린 `transition-all duration-400 ease`, 부드러운 오파시티 `transition-opacity duration-300`, 드라마틱 효과 없음
|
|
336
|
+
- **Gradient**: 매우 미묘한 `from-slate-50 to-teal-50/30`, 거의 사용하지 않음, 대부분 단색
|
|
337
|
+
- **Image Interaction**: `hover:scale-[1.01] hover:bg-slate-100` 매우 미묘한
|
|
338
|
+
- **Section Divider**: 손그림 느낌 border (`border-dashed border-slate-300`) 또는 SVG 손그림 라인
|
|
339
|
+
|
|
340
|
+
### [V] 🌌 코스믹 (Cosmic)
|
|
341
|
+
- **컨셉**: 우주/별 테마, 딥 퍼플
|
|
342
|
+
- **Primary**: `#7c3aed`
|
|
343
|
+
- **Background**: `#0c0a1a`
|
|
344
|
+
- **Accent**: `#06b6d4`
|
|
345
|
+
- **적합**: 테크, AI, 스타트업
|
|
346
|
+
- **Hover**: 별 트윙클 `hover:shadow-[0_0_25px_rgba(124,58,237,0.4)]`, 오빗 글로우, `hover:border-violet-400/60`
|
|
347
|
+
- **Shadow**: 코스믹 글로우 `shadow-[0_0_20px_rgba(124,58,237,0.2)]`, 카드 `shadow-[0_0_40px_rgba(6,182,212,0.05)]`
|
|
348
|
+
- **Border**: `border border-violet-500/30`, 호버 `/50`, 스타 보더 `border-violet-400/20`
|
|
349
|
+
- **BG Pattern**: 별밭 CSS (`box-shadow` 다중 도트), 네뷸라 그라데이션 `radial-gradient(ellipse at 20% 50%, rgba(124,58,237,0.15), transparent 50%)`, 스페이스 더스트
|
|
350
|
+
- **Decoration**: 별/행성 셰이프, 별자리 연결선 SVG, 오빗 링 `rounded-full border border-dashed border-violet-500/20`, 글로잉 오브
|
|
351
|
+
- **Animation**: 트윙클 `animate-twinkle` (opacity 0.3↔1 random delay), 느린 오빗 회전 `animate-spin duration-[30s]`, 패럴렉스 부유, 줌스루 `scale-90→100 + opacity`
|
|
352
|
+
- **Gradient**: 네뷸라 `from-violet-600 via-purple-500 to-cyan-400`, 스타더스트 `from-indigo-900 via-purple-900 to-slate-900`, 텍스트 `from-violet-400 to-cyan-300`
|
|
353
|
+
- **Image Interaction**: `hover:shadow-[0_0_25px_rgba(124,58,237,0.3)]` 별빛 글로우
|
|
354
|
+
- **Section Divider**: 스타더스트 글로우 라인 (`bg-gradient-to-r from-transparent via-violet-500/30 to-transparent h-px`)
|
|
355
|
+
|
|
356
|
+
### [W] 🏖️ 트로피컬 (Tropical)
|
|
357
|
+
- **컨셉**: 열대 느낌, 밝고 활기찬
|
|
358
|
+
- **Primary**: `#10b981`
|
|
359
|
+
- **Background**: `#f0fdfa`
|
|
360
|
+
- **Accent**: `#f59e0b`
|
|
361
|
+
- **적합**: 여행, 리조트, 라이프스타일
|
|
362
|
+
- **Hover**: 리프 웨이브 `hover:scale-[1.02]`, `hover:-translate-y-1`, 섀도우 딥 `hover:shadow-lg`
|
|
363
|
+
- **Shadow**: `shadow-lg shadow-emerald-500/10`, 카드 `shadow-md shadow-emerald-100`
|
|
364
|
+
- **Border**: `border border-emerald-200`, 라운드 `rounded-2xl`, 호버 `hover:border-amber-300`
|
|
365
|
+
- **BG Pattern**: 팜리프 그림자 (SVG), 트로피컬 그라데이션 `from-emerald-50 to-amber-50`, 웨이브 셰이프 구분선
|
|
366
|
+
- **Decoration**: 잎/꽃 액센트, 웨이브 디바이더 SVG `<path d="M0,20 C150,60 350,0 500,20">`, 선셋 요소, 코코넛 아이콘
|
|
367
|
+
- **Animation**: 웨이브 모션 `animate-wave` (translateX + rotate 미세, 3s), 트로피컬 플로트, 부드러운 흔들림 `animate-sway`
|
|
368
|
+
- **Gradient**: 트로피컬 `from-emerald-400 to-amber-300`, 선셋 `from-amber-400 via-rose-400 to-purple-400`, 바다 `from-cyan-400 to-emerald-400`
|
|
369
|
+
- **Image Interaction**: `hover:scale-[1.02] hover:-translate-y-1 hover:shadow-lg` 리프 웨이브
|
|
370
|
+
- **Section Divider**: 트로피컬 wave SVG (`fill-emerald-100`)
|
|
371
|
+
|
|
372
|
+
### [X] 🎨 아트데코 (Art Deco)
|
|
373
|
+
- **컨셉**: 기하학적 패턴, 골드 포인트
|
|
374
|
+
- **Primary**: `#b45309`
|
|
375
|
+
- **Background**: `#1c1917`
|
|
376
|
+
- **Accent**: `#fbbf24`
|
|
377
|
+
- **적합**: 럭셔리, 호텔, 이벤트
|
|
378
|
+
- **Hover**: 골드 샤인 스윕 `hover:bg-gradient-to-r hover:from-transparent hover:via-amber-400/10 hover:to-transparent`, 보더 골드 강화
|
|
379
|
+
- **Shadow**: `shadow-xl shadow-amber-900/20`, 골드 글로우 `shadow-[0_0_15px_rgba(251,191,36,0.1)]`
|
|
380
|
+
- **Border**: `border-2 border-amber-500/40` 더블라인 스타일, 골드 인셋 `ring-1 ring-amber-400/20`, 기하학적 프레임
|
|
381
|
+
- **BG Pattern**: 기하학적 다이아몬드/쉐브론 `repeating-linear-gradient(45deg, transparent, transparent 20px, rgba(251,191,36,0.03) 20px, rgba(251,191,36,0.03) 21px)`, 골드 라인 그리드, 아트데코 팬 패턴
|
|
382
|
+
- **Decoration**: 골드 코너 장식 (L자 코너), 기하학적 디바이더 `◆━━━◆`, 팬 셰이프 SVG, 아르데코 프레임
|
|
383
|
+
- **Animation**: 골드 시머 스윕 `animate-gold-sweep` (background-position 좌→우), 우아한 페이드인 `opacity + translateY 400ms ease`, `clip-path` 기하학적 리빌
|
|
384
|
+
- **Gradient**: 골드 `from-amber-700 via-amber-500 to-amber-300`, 다크골드 `from-stone-900 to-stone-800`, 텍스트 골드 `from-amber-400 to-yellow-200`
|
|
385
|
+
- **Image Interaction**: `hover:bg-gradient-to-r hover:from-transparent hover:via-amber-400/10 hover:to-transparent` 골드 샤인 스윕
|
|
386
|
+
- **Section Divider**: 골드 기하학 라인 (`bg-gradient-to-r from-transparent via-amber-500/40 to-transparent h-px`)
|
|
387
|
+
|
|
388
|
+
### [Y] 🌿 에코/서스테이너블 (Eco/Sustainable)
|
|
389
|
+
- **컨셉**: 친환경, 지속가능한 느낌
|
|
390
|
+
- **Primary**: `#15803d`
|
|
391
|
+
- **Background**: `#f7fee7`
|
|
392
|
+
- **Accent**: `#65a30d`
|
|
393
|
+
- **적합**: 환경, NGO, 오가닉
|
|
394
|
+
- **Hover**: 잎 성장 `hover:scale-[1.02]`, 부드러운 그린 글로우 `hover:shadow-md hover:shadow-green-500/10`
|
|
395
|
+
- **Shadow**: `shadow-md shadow-green-800/8`, 카드 `shadow-sm shadow-green-100`
|
|
396
|
+
- **Border**: `border border-green-300`, `rounded-xl`, 호버 `hover:border-green-400`
|
|
397
|
+
- **BG Pattern**: 유기적 잎 셰이프 SVG, 토포그래피 라인 패턴 `repeating-conic-gradient`, 재활용 종이 텍스처 (미세 노이즈)
|
|
398
|
+
- **Decoration**: 에코 뱃지 `🌱`, 잎 아이콘, 덩굴 액센트 보더, 자연 라인 디바이더, 시드 도트
|
|
399
|
+
- **Animation**: 씨앗→발아 `scale-0→1 + rotate(-180deg→0)`, 부드러운 부유, 자연 호흡 `animate-breathe` (scale 1↔1.02 5s)
|
|
400
|
+
- **Gradient**: 어스 `from-green-600 to-lime-400`, 포레스트 `from-green-800 to-emerald-600`, 미묘한 `from-lime-50 to-green-50`
|
|
401
|
+
- **Image Interaction**: `hover:scale-[1.02] hover:shadow-md hover:shadow-green-500/10` 부드러운 그린
|
|
402
|
+
- **Section Divider**: 자연톤 라인 (`border-green-300`)
|
|
403
|
+
|
|
404
|
+
### [Z] ⚡ 사이버펑크 (Cyberpunk)
|
|
405
|
+
- **컨셉**: 하이테크 + 로우라이프, 글리치
|
|
406
|
+
- **Primary**: `#eab308`
|
|
407
|
+
- **Background**: `#09090b`
|
|
408
|
+
- **Accent**: `#ef4444`
|
|
409
|
+
- **적합**: 게임, 테크, 엔터테인먼트
|
|
410
|
+
- **Hover**: 글리치 플리커 `hover:animate-glitch-hover`, 네온 강화 `hover:shadow-[0_0_20px_rgba(234,179,8,0.4)]`, 스큐 `hover:skew-x-1`
|
|
411
|
+
- **Shadow**: 사이버 글로우 `shadow-[0_0_15px_rgba(234,179,8,0.2)]`, 레드 경고 `shadow-[0_0_10px_rgba(239,68,68,0.2)]`
|
|
412
|
+
- **Border**: `border border-yellow-500/40`, 글리치 더블 `border-2 border-yellow-400/50 shadow-[2px_2px_0_0_rgba(239,68,68,0.5)]`
|
|
413
|
+
- **BG Pattern**: 서킷보드 라인 SVG, 헥스 그리드, 데이터 레인 (matrix), `repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(234,179,8,0.02) 2px, rgba(234,179,8,0.02) 4px)` 스캔라인
|
|
414
|
+
- **Decoration**: 글리치 사각형 (offset red/cyan 더블), 스캔라인 오버레이, 터미널 커서 `animate-blink`, 경고 스트라이프 `⚠`, 코드 블록 스타일 레이블
|
|
415
|
+
- **Animation**: 글리치 셰이크 `animate-glitch` (translateX ±3px + clip-path random, 200ms), 네온 플리커 `animate-neon-flicker`, 디지털 디졸브 (pixel fade), 타이핑 이펙트
|
|
416
|
+
- **Gradient**: 사이버 `from-yellow-400 to-red-500`, 워닝 `from-yellow-500 via-amber-500 to-red-600`, 배경 `from-zinc-950 via-zinc-900 to-zinc-950`
|
|
417
|
+
- **Image Interaction**: `hover:animate-glitch-hover hover:skew-x-1` 글리치 효과
|
|
418
|
+
- **Section Divider**: 글리치 더블 라인 (`border-yellow-500/40 shadow-[2px_2px_0_0_rgba(239,68,68,0.5)]`)
|
|
419
|
+
|
|
420
|
+
---
|
|
421
|
+
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# 커스텀 애니메이션 키프레임 레퍼런스
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
아래는 스타일에서 자주 참조되는 커스텀 애니메이션입니다. `tailwind.config` 또는 CSS `@keyframes`로 정의합니다.
|
|
5
|
+
|
|
6
|
+
```css
|
|
7
|
+
/* 공통 */
|
|
8
|
+
@keyframes fade-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
|
|
9
|
+
@keyframes fade-in { from { opacity: 0; } to { opacity: 1; } }
|
|
10
|
+
@keyframes scale-in { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }
|
|
11
|
+
|
|
12
|
+
/* 네온/글로우 계열 (A, R, V, Z) */
|
|
13
|
+
@keyframes neon-flicker { 0%, 100% { opacity: 1; } 50% { opacity: 0.8; } 75% { opacity: 0.95; } }
|
|
14
|
+
@keyframes neon-blink { 0%, 100% { opacity: 1; } 40% { opacity: 1; } 42% { opacity: 0.6; } 44% { opacity: 1; } 80% { opacity: 1; } 82% { opacity: 0.7; } 84% { opacity: 1; } }
|
|
15
|
+
@keyframes twinkle { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }
|
|
16
|
+
@keyframes glitch { 0% { transform: translate(0); } 20% { transform: translate(-3px, 1px); } 40% { transform: translate(3px, -1px); } 60% { transform: translate(-1px, 2px); } 80% { transform: translate(2px, -2px); } 100% { transform: translate(0); } }
|
|
17
|
+
|
|
18
|
+
/* 부유/흔들림 계열 (E, G, S, W) */
|
|
19
|
+
@keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
|
|
20
|
+
@keyframes float-gentle { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
|
|
21
|
+
@keyframes sway { 0%, 100% { transform: rotate(0deg); } 25% { transform: rotate(2deg); } 75% { transform: rotate(-2deg); } }
|
|
22
|
+
@keyframes breathe { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.03); } }
|
|
23
|
+
|
|
24
|
+
/* 그라데이션 시프트 (B, H, O) */
|
|
25
|
+
@keyframes gradient-flow { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
|
|
26
|
+
@keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } }
|
|
27
|
+
@keyframes gold-sweep { 0% { background-position: -100% 0; } 100% { background-position: 200% 0; } }
|
|
28
|
+
|
|
29
|
+
/* 인터랙티브/게임 계열 (F, L, N) */
|
|
30
|
+
@keyframes bounce-in { 0% { transform: scale(0); } 60% { transform: scale(1.1); } 100% { transform: scale(1); } }
|
|
31
|
+
@keyframes wiggle { 0%, 100% { transform: rotate(0deg); } 25% { transform: rotate(-3deg); } 75% { transform: rotate(3deg); } }
|
|
32
|
+
@keyframes shake { 0%, 100% { transform: translateX(0); } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
|
|
33
|
+
|
|
34
|
+
/* 파이어 (T) */
|
|
35
|
+
@keyframes flame-flicker { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.92; transform: scale(1.01); } }
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# 3DS 디자인 스타일 정의 (A-Z, 26종)
|
|
2
|
+
|
|
3
|
+
> 참조: `stages/stage3-design.md` Q3-1에서 사용
|
|
4
|
+
> Dependencies: 없음 (독립 참조 데이터)
|
|
5
|
+
> Illustration Tone 매핑: defs/illustration-guide.md § 1 참조
|
|
6
|
+
>
|
|
7
|
+
> 각 스타일은 **색상 팔레트** + **인터랙션 패턴** + **시각 장식** 을 정의합니다.
|
|
8
|
+
> 디자인 가이드 섹션 7(인터랙션 & 모션)과 토큰 생성 시 이 정의를 참조합니다.
|
|
9
|
+
|
|
10
|
+
## 필드 설명
|
|
11
|
+
|
|
12
|
+
| 필드 | 설명 |
|
|
13
|
+
|------|------|
|
|
14
|
+
| **컨셉** | 스타일 요약 (한 줄) |
|
|
15
|
+
| **Primary / Background / Accent** | 핵심 색상 3종 |
|
|
16
|
+
| **적합** | 적합한 프로젝트 유형 |
|
|
17
|
+
| **Hover** | 카드·버튼·링크 호버 효과 (Tailwind 클래스) |
|
|
18
|
+
| **Shadow** | 그림자 시스템 (엘리베이션 패턴) |
|
|
19
|
+
| **Border** | 테두리 스타일 |
|
|
20
|
+
| **BG Pattern** | 배경 장식 패턴 (CSS/SVG) |
|
|
21
|
+
| **Decoration** | 장식 요소 (코너, 뱃지, 구분선 등) |
|
|
22
|
+
| **Animation** | 핵심 애니메이션 키프레임 |
|
|
23
|
+
| **Gradient** | 그라데이션 활용 패턴 |
|
|
24
|
+
| **Image Interaction** | 카드/섹션의 이미지 호버 효과 (Tailwind/CSS 클래스) |
|
|
25
|
+
| **Section Divider** | 섹션 간 구분 방식 (SVG/CSS) |
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 스타일 목록
|
|
30
|
+
|
|
31
|
+
> 상세: `defs/styles/02-style-list.md` 참조
|
|
32
|
+
|
|
33
|
+
- **컨셉**: 어두운 배경 + 네온 포인트
|
|
34
|
+
## 커스텀 애니메이션 키프레임 레퍼런스
|
|
35
|
+
|
|
36
|
+
> 상세: `defs/styles/03-custom-animation-keyframes.md` 참조
|
|
37
|
+
|
|
38
|
+
아래는 스타일에서 자주 참조되는 커스텀 애니메이션입니다. `tailwind.config` 또는 CSS `@keyframes`로 정의합니다.
|
|
39
|
+
## 스타일 선택 가이드 (Quick Reference)
|
|
40
|
+
|
|
41
|
+
| 분위기 | 추천 스타일 |
|
|
42
|
+
|--------|-------------|
|
|
43
|
+
| 다크 + 글로우 | A, R, V, Z |
|
|
44
|
+
| 그라데이션 중심 | B, H, O |
|
|
45
|
+
| 투명/블러 | E, P |
|
|
46
|
+
| 미니멀/클린 | D, I, Q, U |
|
|
47
|
+
| 대담/그래픽 | C, F, L, N, T |
|
|
48
|
+
| 자연/소프트 | G, S, W, Y |
|
|
49
|
+
| 클래식/장식 | M, X |
|
|
50
|
+
| 데이터/기능 | J, K |
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# 토큰 형식 (Token Format)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### 1. Tailwind Config (`tailwind`)
|
|
5
|
+
- **용도**: 웹 프로젝트 (Tailwind CSS 사용 시)
|
|
6
|
+
- **출력**: `design/tokens/tailwind.config.js`
|
|
7
|
+
- **장점**: 즉시 적용, 클래스 자동완성, 트리쉐이킹
|
|
8
|
+
|
|
9
|
+
```javascript
|
|
10
|
+
// design/tokens/tailwind.config.js
|
|
11
|
+
export default {
|
|
12
|
+
theme: {
|
|
13
|
+
extend: {
|
|
14
|
+
colors: { primary: { 50: '#eff6ff', 500: '#3b82f6', 900: '#1e3a8a' } },
|
|
15
|
+
fontFamily: { sans: ['Inter', 'sans-serif'] },
|
|
16
|
+
spacing: { /* ... */ },
|
|
17
|
+
borderRadius: { /* ... */ },
|
|
18
|
+
boxShadow: { /* ... */ },
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
}
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### 2. JSON + CSS Variables (`css_variables`)
|
|
25
|
+
- **용도**: 웹/PC앱 (런타임 테마 전환)
|
|
26
|
+
- **출력**: `design/tokens/base.json` + `design/tokens/variables.css`
|
|
27
|
+
- **장점**: 런타임 테마 전환, 다크모드 구현 용이
|
|
28
|
+
|
|
29
|
+
```json
|
|
30
|
+
// design/tokens/base.json
|
|
31
|
+
{
|
|
32
|
+
"color": {
|
|
33
|
+
"primary": { "value": "#3b82f6", "type": "color" },
|
|
34
|
+
"background": { "value": "#0f172a", "type": "color" }
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
```css
|
|
40
|
+
/* design/tokens/variables.css */
|
|
41
|
+
:root {
|
|
42
|
+
--color-primary: #3b82f6;
|
|
43
|
+
--color-background: #ffffff;
|
|
44
|
+
}
|
|
45
|
+
[data-theme="dark"] {
|
|
46
|
+
--color-background: #0f172a;
|
|
47
|
+
}
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 3. JSON Only (`json`)
|
|
51
|
+
- **용도**: 모든 플랫폼 (빌드 도구에서 변환)
|
|
52
|
+
- **출력**: `design/tokens/base.json`
|
|
53
|
+
- **장점**: 최대 유연성, 커스텀 파이프라인
|
|
54
|
+
|
|
55
|
+
### 4. Style Dictionary (`style_dictionary`)
|
|
56
|
+
- **용도**: 멀티플랫폼 앱 (iOS/Android/웹)
|
|
57
|
+
- **출력**: `design/tokens/style-dictionary/` 구조
|
|
58
|
+
- **장점**: 단일 소스 → 멀티 타겟 자동 변환
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
design/tokens/style-dictionary/
|
|
62
|
+
├── build/
|
|
63
|
+
│ ├── css/variables.css
|
|
64
|
+
│ ├── ios/StyleDictionary.swift
|
|
65
|
+
│ └── android/colors.xml
|
|
66
|
+
└── config.json
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### 5. JSON + 플랫폼별 Config (`platform_config`)
|
|
70
|
+
- **용도**: 멀티플랫폼 (개별 설정)
|
|
71
|
+
- **출력**: `design/tokens/base.json` + 플랫폼별 파일
|
|
72
|
+
- **장점**: 각 플랫폼 네이티브 형식
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|