oh-my-design-cli 1.8.2 → 1.8.7

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.
Files changed (83) hide show
  1. package/README.ja.md +5 -5
  2. package/README.ko.md +7 -7
  3. package/README.md +7 -7
  4. package/README.zh-TW.md +5 -5
  5. package/agents/omd-master.md +1 -1
  6. package/data/reference-fingerprints.json +1696 -17
  7. package/package.json +3 -1
  8. package/skills/omd-feel/SKILL.md +152 -0
  9. package/skills/omd-feel/provenance.md +233 -0
  10. package/skills/omd-feel/reference.md +254 -0
  11. package/skills/omd-harness/SKILL.md +1 -1
  12. package/skills/omd-init/SKILL.md +1 -1
  13. package/skills/omd-reference-capture/SKILL.md +1 -1
  14. package/web/references/591/DESIGN.md +460 -0
  15. package/web/references/airbridge/DESIGN.md +451 -0
  16. package/web/references/asana/DESIGN.md +485 -0
  17. package/web/references/asos/DESIGN.md +475 -0
  18. package/web/references/bahamut/DESIGN.md +416 -0
  19. package/web/references/bbc/DESIGN.md +439 -0
  20. package/web/references/bigin/DESIGN.md +454 -0
  21. package/web/references/buzzvil/DESIGN.md +457 -0
  22. package/web/references/cafe24/DESIGN.md +472 -0
  23. package/web/references/chunghwa/DESIGN.md +419 -0
  24. package/web/references/codeit/DESIGN.md +470 -0
  25. package/web/references/databricks/DESIGN.md +467 -0
  26. package/web/references/datarize/DESIGN.md +451 -0
  27. package/web/references/deliveroo/DESIGN.md +458 -0
  28. package/web/references/doordash/DESIGN.md +429 -0
  29. package/web/references/easywallet/DESIGN.md +449 -0
  30. package/web/references/elice/DESIGN.md +445 -0
  31. package/web/references/esunbank/DESIGN.md +445 -0
  32. package/web/references/farfetch/DESIGN.md +436 -0
  33. package/web/references/fubon/DESIGN.md +438 -0
  34. package/web/references/furiosaai/DESIGN.md +450 -0
  35. package/web/references/goorm/DESIGN.md +470 -0
  36. package/web/references/govuk/DESIGN.md +450 -0
  37. package/web/references/greencar/DESIGN.md +420 -0
  38. package/web/references/hackle/DESIGN.md +472 -0
  39. package/web/references/hana/DESIGN.md +439 -0
  40. package/web/references/hubspot/DESIGN.md +485 -0
  41. package/web/references/hwahae/DESIGN.md +453 -0
  42. package/web/references/hyundai/DESIGN.md +468 -0
  43. package/web/references/icook/DESIGN.md +432 -0
  44. package/web/references/instacart/DESIGN.md +439 -0
  45. package/web/references/ipassmoney/DESIGN.md +407 -0
  46. package/web/references/kakaopage/DESIGN.md +439 -0
  47. package/web/references/kbpay/DESIGN.md +442 -0
  48. package/web/references/kcd/DESIGN.md +432 -0
  49. package/web/references/kia/DESIGN.md +411 -0
  50. package/web/references/kyobobook/DESIGN.md +445 -0
  51. package/web/references/lablup/DESIGN.md +474 -0
  52. package/web/references/lemonbase/DESIGN.md +452 -0
  53. package/web/references/liner/DESIGN.md +465 -0
  54. package/web/references/makinarocks/DESIGN.md +442 -0
  55. package/web/references/monzo/DESIGN.md +461 -0
  56. package/web/references/moreh/DESIGN.md +437 -0
  57. package/web/references/naverpay/DESIGN.md +478 -0
  58. package/web/references/neosapience/DESIGN.md +441 -0
  59. package/web/references/nota/DESIGN.md +451 -0
  60. package/web/references/octopusenergy/DESIGN.md +436 -0
  61. package/web/references/openpoint/DESIGN.md +431 -0
  62. package/web/references/paypal/DESIGN.md +459 -0
  63. package/web/references/portone/DESIGN.md +446 -0
  64. package/web/references/queenit/DESIGN.md +432 -0
  65. package/web/references/rebellions/DESIGN.md +449 -0
  66. package/web/references/reddit/DESIGN.md +537 -0
  67. package/web/references/returnzero/DESIGN.md +460 -0
  68. package/web/references/samsung/DESIGN.md +465 -0
  69. package/web/references/saramin/DESIGN.md +465 -0
  70. package/web/references/shiftee/DESIGN.md +468 -0
  71. package/web/references/shinhanbank/DESIGN.md +429 -0
  72. package/web/references/skyscanner/DESIGN.md +563 -0
  73. package/web/references/snapchat/DESIGN.md +460 -0
  74. package/web/references/solapi/DESIGN.md +483 -0
  75. package/web/references/squarespace/DESIGN.md +454 -0
  76. package/web/references/ssg/DESIGN.md +439 -0
  77. package/web/references/starling/DESIGN.md +404 -0
  78. package/web/references/supertone/DESIGN.md +413 -0
  79. package/web/references/taiwanmobile/DESIGN.md +445 -0
  80. package/web/references/trainline/DESIGN.md +454 -0
  81. package/web/references/vuno/DESIGN.md +413 -0
  82. package/web/references/weverse/DESIGN.md +437 -0
  83. package/web/references/zoom/DESIGN.md +457 -0
@@ -0,0 +1,470 @@
1
+ ---
2
+ id: codeit
3
+ name: Codeit
4
+ display_name_kr: 코드잇
5
+ country: KR
6
+ category: education
7
+ homepage: "https://www.codeit.kr"
8
+ primary_color: "#9933ff"
9
+ logo:
10
+ type: favicon
11
+ slug: "https://www.google.com/s2/favicons?domain=codeit.kr&sz=128"
12
+ verified: "2026-06-26"
13
+ added: "2026-06-26"
14
+ omd: "0.1"
15
+ tokens:
16
+ source: live-extract
17
+ extracted: "2026-06-26"
18
+ note: "primary = live CTA purple (#9933ff) across home/subscription/explore; brighter #8f00ff + deep #760dde are emphasis violets; recommended-plan card fills lavender #b363fd. Text is warm near-black ink #333236, never pure black. Display H1 is Pretendard 800; all other headings + body are SpoqaHanSansNeo."
19
+ colors:
20
+ primary: "#9933ff"
21
+ primary-bright: "#8f00ff"
22
+ primary-deep: "#760dde"
23
+ lavender: "#b363fd"
24
+ lavender-soft: "#c47cfd"
25
+ pink: "#ff52b7"
26
+ ink: "#333236"
27
+ night: "#080c14"
28
+ plum: "#3d1457"
29
+ canvas: "#ffffff"
30
+ surface: "#f6f6f8"
31
+ surface-violet: "#f8ecff"
32
+ tint-violet: "#f3e1fd"
33
+ surface-pink: "#ffebf7"
34
+ on-primary: "#ffffff"
35
+ typography:
36
+ family: { display: "Pretendard", text: "SpoqaHanSansNeo" }
37
+ hero: { size: 68, weight: 800, lineHeight: 1.21, tracking: -1.5, use: "Hero H1, Pretendard ExtraBold (5분마다 인생이 바뀐다)" }
38
+ display: { size: 48, weight: 700, lineHeight: 1.29, tracking: -1.0, use: "Large section titles, SpoqaHanSansNeo Bold" }
39
+ section: { size: 32, weight: 700, lineHeight: 1.38, tracking: -0.3, use: "Section headings" }
40
+ card-title: { size: 28, weight: 700, lineHeight: 1.43, tracking: -0.3, use: "Card / feature heads (H3)" }
41
+ subhead: { size: 18, weight: 700, lineHeight: 1.67, tracking: -0.3, use: "Small headings, testimonial titles" }
42
+ body: { size: 16, weight: 400, lineHeight: 1.50, use: "Standard reading text, SpoqaHanSansNeo" }
43
+ button: { size: 16, weight: 500, lineHeight: 1.50, use: "Standard CTA label" }
44
+ nav: { size: 13, weight: 500, lineHeight: 1.50, use: "Nav links and chips" }
45
+ spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 20, xl: 24, xxl: 32, section: 48 }
46
+ rounded: { sm: 6, md: 8, base: 12, lg: 20, xl: 24, pill: 9999 }
47
+ shadow:
48
+ card: "rgba(0,0,0,0.08) 0px 2px 14px"
49
+ elevated: "rgba(0,0,0,0.2) 0px 4px 24px"
50
+ none: "none"
51
+ components:
52
+ button-primary: { type: button, bg: "#9933ff", fg: "#ffffff", radius: "10px", padding: "10px 32px", height: "48px", font: "18px / 700 SpoqaHanSansNeo", use: "Hero primary CTA — 무료 체험 시작하기 / 멤버십 시작하기" }
53
+ button-chip: { type: button, bg: "#9933ff", fg: "#ffffff", radius: "6px", padding: "6px 12px 5px", height: "32px", font: "13px / 500 SpoqaHanSansNeo", use: "Nav membership chip — 멤버십 안내" }
54
+ button-pill: { type: button, bg: "#9933ff", fg: "#ffffff", radius: "22px", padding: "8px 16px", height: "43px", font: "16px / 500 SpoqaHanSansNeo", use: "Rounded inline CTA — 지원 기기" }
55
+ button-ghost: { type: button, fg: "#333236", radius: "8px", padding: "8px 24px", height: "45px", border: "1px solid rgba(51,50,54,0.2)", font: "16px / 500 SpoqaHanSansNeo", use: "Outline secondary CTA — 모든 IT 강의 보러가기" }
56
+ button-neutral: { type: button, bg: "#f6f6f8", fg: "#333236", radius: "8px", padding: "14px 0px", height: "55px", font: "16px / 400 SpoqaHanSansNeo", use: "Neutral full-width action — 이메일로 로그인하기" }
57
+ card-plan: { type: card, bg: "#ffffff", radius: "24px", shadow: "rgba(0,0,0,0.08) 0px 2px 14px", border: "2px solid rgba(51,50,54,0.1)", use: "Standard membership plan card" }
58
+ card-highlight: { type: card, bg: "#b363fd", fg: "#ffffff", radius: "24px", shadow: "rgba(0,0,0,0.2) 0px 4px 24px", use: "Recommended / featured plan card" }
59
+ card-course: { type: card, bg: "#ffffff", radius: "20px", border: "1px solid rgba(51,50,54,0.15)", use: "Course card on the explore grid" }
60
+ badge-count: { type: badge, bg: "#9933ff", fg: "#ffffff", radius: "6px", padding: "0px 6px", height: "28px", font: "15px / 500 SpoqaHanSansNeo", use: "Cart / notification counter" }
61
+ input-search: { type: input, bg: "#f6f6f8", fg: "#333236", radius: "21px", padding: "8px 16px", height: "40px", font: "14px SpoqaHanSansNeo", use: "Course search field — 어떤 강의를 찾고 있나요?" }
62
+ nav-tab: { type: tab, fg: "#333236", active: "solid #333236 label", use: "Top nav / explore category tabs — inactive at 80% opacity, active solid ink" }
63
+ components_harvested: true
64
+ ---
65
+
66
+ # Design System Inspiration of Codeit
67
+
68
+ ## 1. Visual Theme & Atmosphere
69
+
70
+ Codeit (코드잇) is Korea's micro-learning-first IT education platform, and its homepage reads like a friendly, energetic consumer product rather than a dry e-learning portal. The canvas is pure white (`#ffffff`) broken up by soft cool-grey (`#f6f6f8`) and pale violet (`#f8ecff`) section bands, so the page feels open and modern. Text sits in a warm near-black ink (`#333236`) — deliberately not pure black — which keeps the long Korean copy readable and approachable. The single saturated brand color is an electric purple (`#9933ff`) that the system trains the eye to read as "the action": it appears on the membership chip in the nav, the hero "무료 체험 시작하기" button, and every plan CTA, and almost nowhere else.
71
+
72
+ The typographic personality is a two-font split. The hero headline "5분마다 인생이 바뀐다" runs in **Pretendard ExtraBold (weight 800)** at a commanding 68px with very tight `-1.5px` tracking — a bold, declarative promise. Everything else — section titles, card heads, navigation, and all body copy — is set in **SpoqaHanSansNeo**, the warm, rounded Korean sans that gives Codeit its distinctly soft, encouraging voice. Section titles land at 48px / 32px weight 700, card heads at 28px weight 700, and body settles to a comfortable 16px weight 400 at 1.5 line-height for dense hangul reading. The result is "bold where it motivates, calm where it teaches."
73
+
74
+ What distinguishes Codeit from typical fintech-minimal Korean sites is its playful use of color and shape. Beyond the core purple it reaches for a brighter violet (`#8f00ff`), a deep violet text accent (`#760dde`), lavenders (`#b363fd`, `#c47cfd`), and even a warm pink (`#ff52b7`) for highlight moments, plus dark immersive bands in night (`#080c14`) and plum (`#3d1457`). Geometry is generous and rounded: cards at 20–24px radius, pill chips at full radius, and CTAs in a 6–10px-to-22px range. Depth is mostly flat — the homepage is nearly shadowless — but the subscription page lifts plan cards with a soft `rgba(0,0,0,0.08) 0px 2px 14px` shadow and the recommended (lavender `#b363fd`) card with a stronger `rgba(0,0,0,0.2) 0px 4px 24px`. Supporting tints — violet `#f3e1fd` cards and pink `#ffebf7` blocks — keep the palette warm and friendly.
75
+
76
+ **Key Characteristics:**
77
+ - Single saturated purple (`#9933ff`) reserved almost entirely for the primary CTA / action
78
+ - Warm near-black ink (`#333236`) for text instead of pure black
79
+ - Two-font split: Pretendard ExtraBold (800) for the hero, SpoqaHanSansNeo for everything else
80
+ - Tight negative tracking on display type (-1.5px at 68px, -1px at 48px)
81
+ - Rounded, friendly geometry — 20–24px cards, pill chips, 6–10px CTAs
82
+ - Mostly flat depth; soft shadows appear only on plan cards
83
+ - A wide, playful violet-to-pink accent family (`#8f00ff`, `#760dde`, `#b363fd`, `#c47cfd`, `#ff52b7`)
84
+ - Dark immersive bands in night (`#080c14`) and plum (`#3d1457`) for feature storytelling
85
+
86
+ ## 2. Color Palette & Roles
87
+
88
+ ### Primary & Accent
89
+ - **Codeit Purple** (`#9933ff`): The single dominant brand and action color. Every primary CTA — the nav "멤버십 안내" chip, the hero "무료 체험 시작하기", plan "멤버십 시작하기" — uses this electric purple.
90
+ - **Bright Violet** (`#8f00ff`): A more saturated violet used on the subscription surface for emphasis accents and price highlights.
91
+ - **Deep Violet** (`#760dde`): A darker violet for active / pressed link text and emphasis labels on light backgrounds.
92
+ - **Lavender** (`#b363fd`): The fill of the highlighted / recommended membership card.
93
+ - **Soft Lavender** (`#c47cfd`): A lighter lavender for decorative tints, gradient stops, and secondary accents.
94
+ - **Pink** (`#ff52b7`): A warm pink accent used sparingly for playful highlights and tags.
95
+
96
+ ### Ink & Dark
97
+ - **Ink** (`#333236`): The signature warm near-black for all body text and most headings — never pure black.
98
+ - **Night** (`#080c14`): The darkest section background for immersive dark feature bands.
99
+ - **Plum** (`#3d1457`): A deep purple card / section background for premium dark-on-violet moments.
100
+
101
+ ### Surface & Neutral
102
+ - **Canvas** (`#ffffff`): The default page and card background.
103
+ - **Surface** (`#f6f6f8`): A cool, barely-there grey for segmented sections, the search field, and neutral buttons.
104
+ - **Violet Surface** (`#f8ecff`): A pale violet tint for soft branded section bands.
105
+ - **Violet Tint** (`#f3e1fd`): A slightly deeper violet tint for cards sitting on violet sections.
106
+ - **Pink Surface** (`#ffebf7`): A pale pink tint for warm highlight blocks.
107
+ - **On Primary** (`#ffffff`): Text and icons on the purple CTA.
108
+
109
+ ## 3. Typography Rules
110
+
111
+ ### Font Family
112
+ - **Display**: `Pretendard` — used for the hero H1 at ExtraBold (800). High-impact, declarative.
113
+ - **Text**: `SpoqaHanSansNeo` (with `Apple SD Gothic Neo`, `Noto Sans KR` fallbacks) — the workhorse for section titles, card heads, navigation, buttons, and all body copy. Bold (700) for headings, Regular (400) for body, Medium (500) for nav and buttons.
114
+
115
+ ### Hierarchy
116
+
117
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
118
+ |------|------|------|--------|-------------|----------------|-------|
119
+ | Hero | Pretendard | 68px (4.25rem) | 800 | 1.21 (82px) | -1.5px | Hero H1, ExtraBold |
120
+ | Display | SpoqaHanSansNeo | 48px (3.00rem) | 700 | 1.29 (62px) | -1.0px | Large section titles |
121
+ | Section | SpoqaHanSansNeo | 32px (2.00rem) | 700 | 1.38 (44px) | -0.3px | Section headings |
122
+ | Card Title | SpoqaHanSansNeo | 28px (1.75rem) | 700 | 1.43 (40px) | -0.3px | Card / feature heads (H3) |
123
+ | Subhead | SpoqaHanSansNeo | 18px (1.13rem) | 700 | 1.67 (30px) | -0.3px | Small headings, testimonial titles |
124
+ | Body | SpoqaHanSansNeo | 16px (1.00rem) | 400 | 1.50 | normal | Standard reading text |
125
+ | Button | SpoqaHanSansNeo | 16px (1.00rem) | 500 | 1.50 | normal | Standard CTA label |
126
+ | Nav | SpoqaHanSansNeo | 13px (0.81rem) | 500 | 1.50 | normal | Nav links and chips |
127
+
128
+ ### Principles
129
+ - **Hero is Pretendard, the rest is Spoqa**: the only place Pretendard appears is the 68px ExtraBold hero; switching back to SpoqaHanSansNeo everywhere else keeps the system warm and consistent.
130
+ - **Bold display, regular body**: headings are weight 700–800; body is a quiet 400. Weight contrast carries the hierarchy.
131
+ - **Tracking tightens with size**: -1.5px at 68px, -1px at 48px, -0.3px on mid headings; body stays at normal tracking.
132
+ - **Hangul-comfortable body**: 16px / 1.5 line-height gives Korean paragraphs room to breathe inside content-dense lesson layouts.
133
+
134
+ ## 4. Component Stylings
135
+
136
+ ### Buttons
137
+
138
+ **Primary CTA (Hero)**
139
+ - Background: `#9933ff`
140
+ - Text: `#ffffff`
141
+ - Radius: 10px
142
+ - Padding: 10px 32px
143
+ - Height: 48px
144
+ - Font: 18px SpoqaHanSansNeo weight 700
145
+ - Use: Hero / page primary CTA ("무료 체험 시작하기", "멤버십 시작하기")
146
+
147
+ **Membership Chip (Nav)**
148
+ - Background: `#9933ff`
149
+ - Text: `#ffffff`
150
+ - Radius: 6px
151
+ - Padding: 6px 12px 5px
152
+ - Height: 32px
153
+ - Font: 13px SpoqaHanSansNeo weight 500
154
+ - Use: Compact purple chip in the top nav ("멤버십 안내")
155
+
156
+ **Pill CTA**
157
+ - Background: `#9933ff`
158
+ - Text: `#ffffff`
159
+ - Radius: 22px
160
+ - Padding: 8px 16px
161
+ - Height: 43px
162
+ - Font: 16px SpoqaHanSansNeo weight 500
163
+ - Use: Rounded inline CTA inside feature sections ("지원 기기")
164
+
165
+ **Ghost / Outline**
166
+ - Text: `#333236`
167
+ - Radius: 8px
168
+ - Padding: 8px 24px
169
+ - Height: 45px
170
+ - Border: 1px solid rgba(51,50,54,0.2)
171
+ - Font: 16px SpoqaHanSansNeo weight 500
172
+ - Use: Secondary outline CTA ("모든 IT 강의 보러가기", "전체 후기 보기")
173
+
174
+ **Neutral (Surface)**
175
+ - Background: `#f6f6f8`
176
+ - Text: `#333236`
177
+ - Radius: 8px
178
+ - Padding: 14px 0px
179
+ - Height: 55px
180
+ - Font: 16px SpoqaHanSansNeo weight 400
181
+ - Use: Full-width neutral action on grey surface ("이메일로 로그인하기")
182
+
183
+ ### Inputs & Forms
184
+
185
+ **Course Search**
186
+ - Background: `#f6f6f8`
187
+ - Text: `#333236`
188
+ - Radius: 21px
189
+ - Padding: 8px 16px
190
+ - Height: 40px
191
+ - Font: 14px SpoqaHanSansNeo
192
+ - Use: Pill-shaped search field on the explore page ("어떤 강의를 찾고 있나요?")
193
+
194
+ ### Cards & Containers
195
+
196
+ **Membership Plan Card**
197
+ - Background: `#ffffff`
198
+ - Radius: 24px
199
+ - Border: 2px solid rgba(51,50,54,0.1)
200
+ - Shadow: `rgba(0,0,0,0.08) 0px 2px 14px`
201
+ - Use: Standard plan card on the subscription page
202
+
203
+ **Recommended Plan Card**
204
+ - Background: `#b363fd`
205
+ - Text: `#ffffff`
206
+ - Radius: 24px
207
+ - Shadow: `rgba(0,0,0,0.2) 0px 4px 24px`
208
+ - Use: Featured / recommended plan, lifted and color-filled
209
+
210
+ **Course Card**
211
+ - Background: `#ffffff`
212
+ - Radius: 20px
213
+ - Border: 1px solid rgba(51,50,54,0.15)
214
+ - Use: Course card on the explore grid (flat, hairline outline)
215
+
216
+ ### Badges
217
+
218
+ **Count Badge**
219
+ - Background: `#9933ff`
220
+ - Text: `#ffffff`
221
+ - Radius: 6px
222
+ - Padding: 0px 6px
223
+ - Height: 28px
224
+ - Font: 15px SpoqaHanSansNeo weight 500
225
+ - Use: Cart / notification counter
226
+
227
+ ### Navigation
228
+ - Background: `#ffffff`
229
+ - Text: `#333236`
230
+ - Font: 13px SpoqaHanSansNeo weight 500
231
+ - Inactive: `#333236` at ~80% opacity
232
+ - Active: solid `#333236` label (explore category tabs)
233
+ - Use: Top horizontal nav ("부트캠프", "기업교육", "커뮤니티", "수강 후기") and explore category tabs
234
+
235
+ ---
236
+
237
+ **Verified:** 2026-06-26 (omd:add-reference CREATE — Tier 1 live inspect, 4 surfaces)
238
+ **Tier 1 sources:** https://www.codeit.kr (homepage, /subscription, /explore, /signin — live computed styles); https://tech.codeit.kr (Codeit official engineering blog — brand-owned); https://about.codeit.com/ko/ (Codeit official company intro — brand-owned)
239
+ **Tier 2 sources:** getdesign.md/codeit — directory placeholder, no Codeit-specific data; styles.refero.design — not listed (searched "codeit", no match)
240
+ **Conflicts unresolved:** none
241
+
242
+ ## 5. Layout Principles
243
+
244
+ ### Spacing System
245
+ - Base unit: 4px
246
+ - Scale: 4px, 8px, 12px, 16px, 20px, 24px, 32px, 48px
247
+ - Notable: CTA padding clusters at 8px 24px (outline) and 10px 32px (primary); card padding runs 24px 32px
248
+
249
+ ### Grid & Container
250
+ - Centered single-column hero anchored by the 68px Pretendard headline
251
+ - Feature sections alternate full-width white (`#ffffff`), cool-grey (`#f6f6f8`), and pale-violet (`#f8ecff`) bands
252
+ - Subscription page uses a 2–3 column plan-card grid with one lifted, color-filled recommended card
253
+ - Explore page uses a responsive course-card grid with a pill search field and text category tabs
254
+
255
+ ### Whitespace Philosophy
256
+ - **Open and friendly**: generous vertical rhythm between sections; the page never feels cramped despite long Korean copy.
257
+ - **Color-banded segmentation**: sections separate by background color (white / `#f6f6f8` / `#f8ecff`), not by heavy borders.
258
+ - **Rounded rhythm**: the repeated 20–24px card radius and full-pill chips create a soft, consistent cadence.
259
+
260
+ ### Border Radius Scale
261
+ - Small (6px): nav chips, count badges
262
+ - Medium (8px–10px): standard buttons, neutral actions
263
+ - Base (12px): inner containers
264
+ - Large (20px): course cards
265
+ - XL (24px): membership plan cards
266
+ - Pill (22px / full): rounded CTAs, search field, carousel controls
267
+
268
+ ## 6. Depth & Elevation
269
+
270
+ | Level | Treatment | Use |
271
+ |-------|-----------|-----|
272
+ | Flat (Level 0) | No shadow | Homepage hero, nav, most sections |
273
+ | Tint (Level 1) | `#f6f6f8` / `#f8ecff` background shift | Section separation without elevation |
274
+ | Card (Level 2) | `rgba(0,0,0,0.08) 0px 2px 14px` | Membership / content plan cards |
275
+ | Elevated (Level 3) | `rgba(0,0,0,0.2) 0px 4px 24px` | Recommended (lavender) plan card |
276
+
277
+ **Shadow Philosophy**: Codeit is mostly flat. The marketing homepage is effectively shadowless — separation comes from white / grey / violet color bands and rounded shapes. Elevation is introduced deliberately and only where hierarchy demands it: on the subscription page, standard plan cards get a soft `rgba(0,0,0,0.08) 0px 2px 14px` lift, and the single recommended plan — filled with lavender `#b363fd` — gets a stronger `rgba(0,0,0,0.2) 0px 4px 24px` so it visibly floats above its neighbors. Emphasis is carried by color (the purple CTA, the lavender card) far more than by shadow.
278
+
279
+ ## 7. Do's and Don'ts
280
+
281
+ ### Do
282
+ - Reserve purple (`#9933ff`) for the primary CTA / action — keep it the single "do this" color
283
+ - Use Pretendard ExtraBold (800) for the hero headline and SpoqaHanSansNeo for everything else
284
+ - Use warm near-black ink (`#333236`) for text instead of pure black
285
+ - Separate sections with color bands (`#ffffff`, `#f6f6f8`, `#f8ecff`), not heavy borders
286
+ - Keep geometry rounded — 20–24px cards, pill chips, 6–10px CTAs
287
+ - Lift only the recommended plan card; keep the rest flat
288
+ - Apply tight negative tracking on display type (-1.5px at 68px)
289
+ - Use the lavender (`#b363fd`) fill to mark the featured plan
290
+
291
+ ### Don't
292
+ - Don't spread purple across many elements — it dilutes the single-action signal
293
+ - Don't use pure black for body text — use ink `#333236`
294
+ - Don't set the hero in SpoqaHanSansNeo — Pretendard owns the 68px display moment
295
+ - Don't add drop shadows to the marketing homepage — it's a flat, color-banded system
296
+ - Don't use sharp / square corners on cards or chips — everything is rounded
297
+ - Don't introduce a second saturated hue as a CTA color — purple is the action color
298
+ - Don't use positive letter-spacing on headlines — Codeit tracks tight
299
+ - Don't overload accent colors (`#8f00ff`, `#760dde`, `#c47cfd`, `#ff52b7`) onto interactive controls — they are decorative
300
+
301
+ ## 8. Responsive Behavior
302
+
303
+ ### Breakpoints
304
+ | Name | Width | Key Changes |
305
+ |------|-------|-------------|
306
+ | Mobile | <640px | Single column, hero compresses, plan cards stack |
307
+ | Tablet | 640-1024px | 2-up plan / course cards, moderate padding |
308
+ | Desktop | 1024-1440px | Full layout, centered hero, multi-column grids |
309
+
310
+ ### Touch Targets
311
+ - Primary CTA at 48px height, full-padded for an unmistakable target
312
+ - Outline / neutral buttons at 45–55px height
313
+ - Pill search field at 40px height with 8px 16px padding
314
+ - Nav chips comfortably tappable within the header
315
+
316
+ ### Collapsing Strategy
317
+ - Hero: 68px Pretendard headline scales down on mobile, weight 800 maintained
318
+ - Plan-card grid: 3-up → 2-up → stacked single column
319
+ - Course grid: responsive wrap; category tabs become a horizontal scroll
320
+ - Color-banded sections maintain full-width treatment across breakpoints
321
+
322
+ ### Image Behavior
323
+ - Feature illustrations and course thumbnails keep their rounded (20–24px) corners at all sizes
324
+ - Dark feature bands (`#080c14`, `#3d1457`) maintain full-width treatment
325
+
326
+ ## 9. Agent Prompt Guide
327
+
328
+ ### Quick Color Reference
329
+ - Primary CTA: Codeit Purple (`#9933ff`)
330
+ - Emphasis violet: Bright Violet (`#8f00ff`), Deep Violet (`#760dde`)
331
+ - Featured card fill: Lavender (`#b363fd`)
332
+ - Text / headings: Ink (`#333236`)
333
+ - Background: Canvas (`#ffffff`)
334
+ - Tinted surfaces: Surface (`#f6f6f8`), Violet Surface (`#f8ecff`), Pink Surface (`#ffebf7`)
335
+ - Dark bands: Night (`#080c14`), Plum (`#3d1457`)
336
+ - Decorative accents: Soft Lavender (`#c47cfd`), Pink (`#ff52b7`)
337
+
338
+ ### Example Component Prompts
339
+ - "Create a hero on white background. Headline at 68px Pretendard weight 800, line-height 1.21, letter-spacing -1.5px, color #333236. One purple CTA: #9933ff background, #ffffff text, 10px radius, 10px 32px padding, 18px SpoqaHanSansNeo weight 700 — '무료 체험 시작하기'."
340
+ - "Design a membership plan grid: standard cards white #ffffff, 24px radius, 2px solid rgba(51,50,54,0.1) border, soft shadow rgba(0,0,0,0.08) 0px 2px 14px. The recommended card fills lavender #b363fd with white text, 24px radius, and a stronger rgba(0,0,0,0.2) 0px 4px 24px shadow so it floats."
341
+ - "Build a course explore page: pill search field #f6f6f8, 21px radius, 8px 16px padding, 14px SpoqaHanSansNeo, placeholder '어떤 강의를 찾고 있나요?'. Course cards white #ffffff, 20px radius, 1px solid rgba(51,50,54,0.15) border, no shadow. Text category tabs in #333236, active solid."
342
+ - "Create the top nav: white header, 13px SpoqaHanSansNeo weight 500 links in #333236, a purple #9933ff membership chip (6px radius, 6px 12px padding) right-aligned."
343
+
344
+ ### Iteration Guide
345
+ 1. Purple `#9933ff` is the single action color — don't spread it
346
+ 2. Hero is Pretendard 800; everything else is SpoqaHanSansNeo
347
+ 3. Text is ink `#333236`, never pure black
348
+ 4. Rounded geometry throughout — 20–24px cards, pill chips, 6–10px CTAs
349
+ 5. Flat by default; lift only the recommended plan card
350
+ 6. Negative tracking on headlines, normal on body
351
+ 7. Use color bands (`#f6f6f8`, `#f8ecff`) to segment sections
352
+
353
+ ---
354
+
355
+ ## 10. Voice & Tone
356
+
357
+ Codeit's voice is **warm, motivating, and plain-spoken** — an encouraging coach who turns "learning to code" from an intimidating commitment into a series of small, winnable five-minute steps. The hero line "5분마다 인생이 바뀐다" ("Your life changes every 5 minutes") sets the register: aspirational but concrete, energetic without hype. Copy speaks directly to the learner ("당신을 도와줄"), frames effort as bite-sized and repeatable, and leans on micro-learning, habit, and gamified progress rather than fear of falling behind.
358
+
359
+ | Context | Tone |
360
+ |---|---|
361
+ | Hero headlines | Aspirational, concrete. "5분마다 인생이 바뀐다." Bold promise, not hype. |
362
+ | Feature copy | Benefit-first, anti-boredom. "20분 이상 영상만 보는 지루한 학습은 그만." |
363
+ | Product / AI features | Helpful, direct. "1초 만에 당신을 도와줄 AI GURU." |
364
+ | CTAs | Low-pressure invitations. "무료 체험 시작하기", "멤버십 시작하기", "모든 IT 강의 보러가기". |
365
+ | Progress / gamification | Encouraging, habit-framed. "페이스 메이커", "레벨업 시스템", "월별 챌린지". |
366
+
367
+ **Voice samples (verbatim from live surfaces, verified 2026-06-26):**
368
+ - "5분마다 인생이 바뀐다" — hero H1 and page title (mission-framed promise).
369
+ - "20분 이상 영상만 보는 지루한 학습은 그만" — feature heading (anti-boredom positioning).
370
+ - "전문가 20인의 노하우로 탄생한 가장 완벽한 5분" — section heading (credibility + micro-learning).
371
+ - "1초 만에 당신을 도와줄 AI GURU" — AI feature heading.
372
+ - "코드잇 멤버십 구독" — subscription page H1.
373
+
374
+ **Forbidden register**: fear-based "you're falling behind" urgency, undefined jargon left unexplained, hype-heavy superlatives, and any tone that makes a beginner feel judged.
375
+
376
+ ## 11. Brand Narrative
377
+
378
+ Codeit (코드잇) is a Korean EdTech company operating an online IT-education platform centered on a distinctive idea: that meaningful learning happens in short, repeatable cycles rather than marathon video sessions. Its homepage promise — "5분마다 인생이 바뀐다" and a "5분 학습 사이클" built from short lessons, hands-on practice (실습), and quizzes — reframes coding education around micro-learning, retention, and habit rather than passive watching.
379
+
380
+ The platform spans self-paced courses (the explore catalog across 입문/데이터/웹/디자인/프로그래밍/AI/비즈니스 tracks), a membership subscription, career-track bootcamps (운영 via sprint.codeit.kr), corporate training (기업교육), and government-subsidized lifelong-education vouchers (평생교육이용권). More recently Codeit has layered AI into the product — the "AI GURU" tutor that answers learner questions instantly — alongside gamified progress systems (페이스 메이커, 레벨업 시스템, 월별 챌린지) designed to keep learners coming back.
381
+
382
+ What Codeit refuses, visible in its design: the dry, text-heavy chrome of legacy LMS portals and the fear-driven urgency of cram-style 학원 marketing. What it embraces: a friendly white-and-purple consumer aesthetic, a single trustworthy action color, bold Pretendard headlines that motivate, and warm SpoqaHanSansNeo copy that explains. The brand positions learning as approachable, habitual, and even fun — "개발도 게임처럼."
383
+
384
+ ## 12. Principles
385
+
386
+ 1. **Small steps, real progress.** The five-minute cycle is the product thesis. *UI implication:* keep units short and self-contained; make "start now" the easiest possible action with one purple CTA.
387
+ 2. **One action, one color.** Purple (`#9933ff`) means "do this." *UI implication:* reserve the saturated purple for the primary CTA so the next step is never ambiguous.
388
+ 3. **Motivate, don't intimidate.** Coding is framed as approachable and game-like. *UI implication:* warm ink text, rounded shapes, encouraging copy; no fear-based urgency.
389
+ 4. **Bold where it persuades, calm where it teaches.** *UI implication:* Pretendard ExtraBold for the hero promise; quiet SpoqaHanSansNeo 400 for lesson and feature content.
390
+ 5. **Flat and friendly.** Color and shape carry hierarchy, not heavy elevation. *UI implication:* segment with color bands and rounded cards; reserve shadow for the one card that must stand out.
391
+
392
+ ## 13. Personas
393
+
394
+ *Personas below are fictional archetypes informed by publicly observable Codeit user segments (Korean career-changers, university students, working professionals upskilling), not individual people.*
395
+
396
+ **정민재, 26, 서울.** A non-CS graduate preparing for a developer career change. Likes that lessons are five minutes each, so he can study on the subway without losing the thread. Chose Codeit because the free trial let him start in one tap, with no sales call.
397
+
398
+ **한소연, 31, 경기.** A marketer learning data analysis to grow into a PM role. Uses the explore catalog to pick a 데이터 track and the AI GURU when she gets stuck. Values that the tone never makes her feel behind for being a beginner.
399
+
400
+ **오준혁, 23, 부산.** A university student using the membership subscription and monthly challenges (월별 챌린지) to stay consistent. The level-up system and pace maker keep him studying like a game rather than a chore.
401
+
402
+ ## 14. States
403
+
404
+ | State | Treatment |
405
+ |---|---|
406
+ | **Empty (no course results)** | White canvas. Single Ink (`#333236`) line explaining no matching courses, with one purple CTA to adjust filters. No clutter. |
407
+ | **Empty (no enrolled courses)** | Muted ink line inviting the learner to explore the catalog, plus a purple "모든 강의" path. Encouraging, never scolding. |
408
+ | **Loading (catalog fetch)** | Skeleton course cards at final dimensions on white, 20px radius, flat pulse consistent with the mostly-shadowless system. |
409
+ | **Loading (AI GURU answer)** | Inline typing indicator within the assistant panel; prior context stays visible. |
410
+ | **Error (request failed)** | Inline message in Ink (`#333236`) with a plain-language explanation and a retry — no bare "오류가 발생했습니다". |
411
+ | **Error (form validation)** | Field-level message below the input describing what's valid, not just "필수". |
412
+ | **Success (enrollment / subscription)** | Brief inline confirmation in a calm tone; next-step ("학습 시작하기") linked immediately below. No celebratory emoji spam. |
413
+ | **Skeleton** | `#f6f6f8` blocks at final dimensions, rounded corners, flat pulse. |
414
+ | **Disabled** | Reduced-opacity surface and text; purple actions fade rather than turn grey to preserve the brand read. |
415
+
416
+ ## 15. Motion & Easing
417
+
418
+ **Durations**:
419
+
420
+ | Token | Value | Use |
421
+ |---|---|---|
422
+ | `motion-fast` | 120ms | Hover, chip press, focus |
423
+ | `motion-standard` | 220ms | Card / section reveal, sheet, dropdown |
424
+ | `motion-slow` | 320ms | Page-level transitions, hero reveal |
425
+
426
+ **Easings**:
427
+
428
+ | Token | Curve | Use |
429
+ |---|---|---|
430
+ | `ease-enter` | `cubic-bezier(0.2, 0.6, 0.25, 1)` | Arriving — cards, sheets, chips |
431
+ | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals |
432
+ | `ease-standard` | `cubic-bezier(0.25, 0.1, 0.25, 1)` | Two-way transitions |
433
+
434
+ **Motion rules**: Motion is friendly but restrained — consistent with the flat, rounded aesthetic. Purple CTAs and pill chips respond to press with a subtle scale / opacity shift; course and plan cards fade-in from below at `motion-standard / ease-enter`. The gamified surfaces (level-up, challenges) may use a single celebratory pop on milestone completion, but routine navigation stays calm. Under `prefers-reduced-motion: reduce`, all transitions collapse to instant; the product remains fully functional.
435
+
436
+ <!--
437
+ OmD v0.1 Sources — Philosophy Layer (sections 10–15)
438
+
439
+ Tier 1 live inspect (2026-06-26) via playwright getComputedStyle on:
440
+ - https://www.codeit.kr (homepage) — hero H1 "5분마다 인생이 바뀐다" Pretendard 68px/800/-1.5px color rgb(51,50,54);
441
+ section H2s 48px/32px weight 700; card H3 28px/700; body SpoqaHanSansNeo 16px rgb(51,50,54);
442
+ primary CTA bg rgb(153,51,255) #9933ff radius 6–10–22px; surface rgb(246,246,248) #f6f6f8.
443
+ - https://www.codeit.kr/subscription — H1 "코드잇 멤버십 구독" 68px/800; plan cards white 24px radius
444
+ shadow rgba(0,0,0,0.08) 0px 2px 14px border 2px rgba(51,50,54,0.1); recommended card bg rgb(179,99,253)
445
+ #b363fd shadow rgba(0,0,0,0.2) 0px 4px 24px.
446
+ - https://www.codeit.kr/explore — pill search FORM bg #f6f6f8 radius 21px padding 8px 16px;
447
+ course cards white 20px radius 1px rgba(51,50,54,0.15) border; count badge #9933ff radius 6px.
448
+ - https://www.codeit.kr/signin — neutral "이메일로 로그인하기" button bg #f6f6f8 radius 8px h55.
449
+
450
+ Brand-owned secondary surfaces confirmed live (2026-06-26):
451
+ - https://tech.codeit.kr — "Codeit blog" (official engineering blog).
452
+ - https://about.codeit.com/ko/ — "코드잇 소개" (official company intro).
453
+
454
+ Tier 2 (cross-check): getdesign.md/codeit returned a directory placeholder with no Codeit-specific
455
+ data; styles.refero.design search for "codeit" returned no match (not listed). Per KR policy these
456
+ do not count toward the brand-owned regional minimum and are recorded as Tier-2 only.
457
+
458
+ Voice samples (§10) are verbatim from the live homepage and subscription page (verified 2026-06-26).
459
+
460
+ Brand narrative (§11): Codeit (코드잇) is a Korean online IT-education platform; product scope (courses,
461
+ membership, bootcamp via sprint.codeit.kr, corporate training, lifelong-education vouchers, AI GURU,
462
+ gamified progress) is drawn from the live site. Broader corporate facts beyond the inspected surfaces
463
+ are general public knowledge, not quoted from a verified company statement this turn.
464
+
465
+ Personas (§13) are fictional archetypes informed by publicly observable Codeit user segments. Names are
466
+ illustrative; they do not refer to real people.
467
+
468
+ Interpretive claims (e.g., "one action, one color", "small steps, real progress") are editorial readings
469
+ connecting Codeit's observed design to its positioning, not directly sourced Codeit statements.
470
+ -->