oh-my-design-cli 1.8.6 → 1.9.0
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/.claude/hooks/lib/preferences-parser.cjs +1 -0
- package/.claude/hooks/lib/preferences-writer.cjs +1 -0
- package/.claude/hooks/post-edit-watch.cjs +1 -0
- package/.claude/hooks/session-end-foldin.cjs +1 -0
- package/.claude/hooks/session-state-loader.cjs +1 -0
- package/.claude/hooks/skill-activation.cjs +1 -0
- package/.claude/settings.json +10 -1
- package/.github/assets/logo-bg.png +0 -0
- package/AGENTS.md +20 -1
- package/CHANGELOG.md +482 -0
- package/MIGRATION.md +103 -0
- package/README.ja.md +56 -19
- package/README.ko.md +47 -30
- package/README.md +48 -30
- package/README.zh-TW.md +59 -22
- package/agents/AGENT.md +8 -7
- package/agents/omd-codex-image.md +1 -1
- package/agents/omd-critic.md +6 -7
- package/agents/omd-designer-review.md +1 -1
- package/agents/omd-final-qa.md +1 -1
- package/agents/omd-humanizer.md +38 -0
- package/agents/omd-kr-writer.md +3 -4
- package/agents/omd-locale-adapter.md +12 -16
- package/agents/omd-master.md +24 -19
- package/agents/omd-microcopy.md +1 -1
- package/agents/omd-orchestrator.md +7 -8
- package/agents/omd-slop-auditor.md +31 -0
- package/agents/omd-ux-researcher.md +1 -1
- package/data/reference-fingerprints.json +2761 -85
- package/dist/bin/oh-my-design.js +16 -8
- package/dist/bin/oh-my-design.js.map +1 -1
- package/dist/chunk-UJIHCEYF.js +99 -0
- package/dist/chunk-UJIHCEYF.js.map +1 -0
- package/dist/doctor-LDWSFM3I.js +763 -0
- package/dist/doctor-LDWSFM3I.js.map +1 -0
- package/dist/install-skills-ZZFNJ2II.js +1120 -0
- package/dist/install-skills-ZZFNJ2II.js.map +1 -0
- package/docs/CLI_QUICKSTART.md +157 -0
- package/package.json +25 -4
- package/scripts/postinstall.cjs +5 -4
- package/skills/claude-design/SKILL.md +38 -14
- package/skills/claude-design/references/claude-design-flow.md +11 -11
- package/skills/claude-design/references/codebase-analysis.md +5 -4
- package/skills/omd-final-qa/SKILL.md +1 -1
- package/skills/omd-harness/SKILL.md +51 -50
- package/skills/omd-humanize/SKILL.md +116 -0
- package/skills/omd-humanize/agents/openai.yaml +4 -0
- package/skills/omd-humanize/references/locale-playbooks.md +102 -0
- package/skills/omd-humanize/references/sources.md +11 -0
- package/skills/omd-init/SKILL.md +18 -12
- package/skills/omd-locale-adapter/SKILL.md +58 -91
- package/skills/omd-orchestrator/SKILL.md +11 -5
- package/skills/omd-reference-capture/SKILL.md +80 -26
- package/skills/omd-reference-capture/scripts/PLAYWRIGHT-LICENSE.txt +202 -0
- package/skills/omd-reference-capture/scripts/PLAYWRIGHT-NOTICE.txt +5 -0
- package/skills/omd-reference-capture/scripts/THIRD_PARTY_NOTICES.md +3 -0
- package/skills/omd-reference-capture/scripts/capture-reference-evidence.mjs +159906 -0
- package/skills/omd-slop-audit/SKILL.md +110 -0
- package/skills/omd-slop-audit/agents/openai.yaml +4 -0
- package/skills/omd-slop-audit/references/pattern-catalog.md +96 -0
- package/skills/omd-slop-audit/references/sources.md +24 -0
- package/web/references/104/DESIGN.md +354 -0
- package/web/references/11st/DESIGN.md +197 -316
- package/web/references/29cm/DESIGN.md +297 -393
- package/web/references/42dot/DESIGN.md +390 -0
- package/web/references/8percent/DESIGN.md +438 -0
- package/web/references/ably/DESIGN.md +267 -572
- package/web/references/acer/DESIGN.md +329 -0
- package/web/references/airbnb/DESIGN.md +219 -557
- package/web/references/airbridge/DESIGN.md +451 -0
- package/web/references/alipay/DESIGN.md +179 -420
- package/web/references/apple/DESIGN.md +224 -498
- package/web/references/asleep/DESIGN.md +402 -0
- package/web/references/au/DESIGN.md +334 -0
- package/web/references/autopedia/DESIGN.md +382 -0
- package/web/references/aws-cloudscape/DESIGN.md +241 -0
- package/web/references/baemin/DESIGN.md +332 -491
- package/web/references/banksalad/DESIGN.md +269 -180
- package/web/references/barogo/DESIGN.md +416 -0
- package/web/references/beusable/DESIGN.md +464 -0
- package/web/references/bigin/DESIGN.md +454 -0
- package/web/references/bilibili/DESIGN.md +206 -374
- package/web/references/bmw/DESIGN.md +162 -276
- package/web/references/brandi/DESIGN.md +184 -325
- package/web/references/buzzvil/DESIGN.md +457 -0
- package/web/references/cafe24/DESIGN.md +472 -0
- package/web/references/catchtable/DESIGN.md +219 -264
- package/web/references/cgv/DESIGN.md +317 -0
- package/web/references/channeltalk/DESIGN.md +210 -336
- package/web/references/china-airlines/DESIGN.md +291 -0
- package/web/references/cjonstyle/DESIGN.md +453 -0
- package/web/references/class101/DESIGN.md +168 -387
- package/web/references/classum/DESIGN.md +228 -203
- package/web/references/claude/DESIGN.md +242 -479
- package/web/references/clay/DESIGN.md +179 -377
- package/web/references/clickhouse/DESIGN.md +254 -343
- package/web/references/codeit/DESIGN.md +470 -0
- package/web/references/cohere/DESIGN.md +214 -324
- package/web/references/coinone/DESIGN.md +199 -179
- package/web/references/corca/DESIGN.md +414 -0
- package/web/references/coupang/DESIGN.md +205 -475
- package/web/references/cursor/DESIGN.md +240 -381
- package/web/references/dabang/DESIGN.md +248 -213
- package/web/references/dable/DESIGN.md +431 -0
- package/web/references/datarize/DESIGN.md +338 -0
- package/web/references/dealicious/DESIGN.md +402 -0
- package/web/references/drdiary/DESIGN.md +404 -0
- package/web/references/elastic/DESIGN.md +238 -0
- package/web/references/elevenlabs/DESIGN.md +183 -321
- package/web/references/elice/DESIGN.md +445 -0
- package/web/references/eslite/DESIGN.md +257 -0
- package/web/references/evaair/DESIGN.md +338 -0
- package/web/references/expo/DESIGN.md +238 -331
- package/web/references/familymart-tw/DESIGN.md +254 -0
- package/web/references/ferrari/DESIGN.md +160 -377
- package/web/references/figma/DESIGN.md +197 -451
- package/web/references/fitpet/DESIGN.md +445 -0
- package/web/references/flex/DESIGN.md +170 -253
- package/web/references/framer/DESIGN.md +197 -340
- package/web/references/freee/DESIGN.md +211 -533
- package/web/references/friendliai/DESIGN.md +431 -0
- package/web/references/frip/DESIGN.md +440 -0
- package/web/references/furiosaai/DESIGN.md +450 -0
- package/web/references/gangnamunni/DESIGN.md +154 -591
- package/web/references/gaudiolab/DESIGN.md +414 -0
- package/web/references/google/DESIGN.md +290 -398
- package/web/references/goorm/DESIGN.md +470 -0
- package/web/references/greencar/DESIGN.md +420 -0
- package/web/references/hackle/DESIGN.md +472 -0
- package/web/references/hashicorp/DESIGN.md +273 -318
- package/web/references/heydealer/DESIGN.md +429 -0
- package/web/references/humanscape/DESIGN.md +433 -0
- package/web/references/hwahae/DESIGN.md +453 -0
- package/web/references/hyundai/DESIGN.md +158 -368
- package/web/references/hyundaicard/DESIGN.md +171 -121
- package/web/references/ibm/DESIGN.md +227 -378
- package/web/references/idus/DESIGN.md +450 -0
- package/web/references/igaworks/DESIGN.md +437 -0
- package/web/references/inflearn/DESIGN.md +221 -366
- package/web/references/intuit/DESIGN.md +244 -0
- package/web/references/jandi/DESIGN.md +191 -291
- package/web/references/jobplanet/DESIGN.md +415 -0
- package/web/references/kakao/DESIGN.md +287 -475
- package/web/references/kakaobank/DESIGN.md +220 -521
- package/web/references/kakaogames/DESIGN.md +220 -0
- package/web/references/kakaopay/DESIGN.md +207 -526
- package/web/references/karrot/DESIGN.md +227 -251
- package/web/references/kb-kookmin/DESIGN.md +308 -0
- package/web/references/kbank/DESIGN.md +220 -175
- package/web/references/kcd/DESIGN.md +432 -0
- package/web/references/kmong/DESIGN.md +281 -356
- package/web/references/krds/DESIGN.md +245 -19
- package/web/references/kream/DESIGN.md +224 -359
- package/web/references/kurly/DESIGN.md +211 -533
- package/web/references/kyobobook/DESIGN.md +445 -0
- package/web/references/lablup/DESIGN.md +474 -0
- package/web/references/lamborghini/DESIGN.md +198 -360
- package/web/references/lemonbase/DESIGN.md +452 -0
- package/web/references/lguplus/DESIGN.md +259 -0
- package/web/references/likelion/DESIGN.md +283 -0
- package/web/references/line/DESIGN.md +396 -355
- package/web/references/linear.app/DESIGN.md +209 -562
- package/web/references/lotteon/DESIGN.md +386 -0
- package/web/references/lovable/DESIGN.md +255 -349
- package/web/references/makinarocks/DESIGN.md +242 -0
- package/web/references/maum-ai/DESIGN.md +423 -0
- package/web/references/medibloc/DESIGN.md +425 -0
- package/web/references/megabox/DESIGN.md +232 -0
- package/web/references/mercari/DESIGN.md +217 -434
- package/web/references/microsoft/DESIGN.md +234 -388
- package/web/references/mildang/DESIGN.md +411 -0
- package/web/references/millie/DESIGN.md +183 -504
- package/web/references/minimax/DESIGN.md +264 -322
- package/web/references/miricanvas/DESIGN.md +182 -355
- package/web/references/miro/DESIGN.md +234 -232
- package/web/references/mistral.ai/DESIGN.md +231 -314
- package/web/references/mixi/DESIGN.md +234 -0
- package/web/references/moin/DESIGN.md +445 -0
- package/web/references/mongodb/DESIGN.md +219 -316
- package/web/references/moreh/DESIGN.md +437 -0
- package/web/references/musinsa/DESIGN.md +184 -510
- package/web/references/mynavi/DESIGN.md +242 -0
- package/web/references/myrealtrip/DESIGN.md +169 -406
- package/web/references/naver/DESIGN.md +328 -499
- package/web/references/naverwebtoon/DESIGN.md +172 -395
- package/web/references/neosapience/DESIGN.md +441 -0
- package/web/references/nhn/DESIGN.md +169 -346
- package/web/references/nhncloud/DESIGN.md +185 -123
- package/web/references/nota/DESIGN.md +451 -0
- package/web/references/notion/DESIGN.md +271 -475
- package/web/references/nrise/DESIGN.md +417 -0
- package/web/references/ohouse/DESIGN.md +210 -549
- package/web/references/oliveyoung/DESIGN.md +217 -326
- package/web/references/ollama/DESIGN.md +241 -308
- package/web/references/onestore/DESIGN.md +248 -0
- package/web/references/palantir/DESIGN.md +256 -0
- package/web/references/panasonic/DESIGN.md +276 -0
- package/web/references/patternfly/DESIGN.md +259 -0
- package/web/references/payhere/DESIGN.md +438 -0
- package/web/references/pega/DESIGN.md +262 -0
- package/web/references/peoplefund/DESIGN.md +431 -0
- package/web/references/petfriends/DESIGN.md +428 -0
- package/web/references/pinkfong/DESIGN.md +199 -367
- package/web/references/pinterest/DESIGN.md +258 -308
- package/web/references/portone/DESIGN.md +446 -0
- package/web/references/poya/DESIGN.md +286 -0
- package/web/references/pozalabs/DESIGN.md +438 -0
- package/web/references/protopie/DESIGN.md +419 -0
- package/web/references/qraft/DESIGN.md +448 -0
- package/web/references/queenit/DESIGN.md +432 -0
- package/web/references/quotabook/DESIGN.md +449 -0
- package/web/references/rebellions/DESIGN.md +449 -0
- package/web/references/recruit/DESIGN.md +247 -0
- package/web/references/remember/DESIGN.md +202 -396
- package/web/references/resend/DESIGN.md +274 -348
- package/web/references/returnzero/DESIGN.md +460 -0
- package/web/references/sakura-internet/DESIGN.md +269 -0
- package/web/references/samsung/DESIGN.md +157 -359
- package/web/references/sandoll/DESIGN.md +445 -0
- package/web/references/sanity/DESIGN.md +241 -375
- package/web/references/saramin/DESIGN.md +465 -0
- package/web/references/scatterlab/DESIGN.md +412 -0
- package/web/references/selectstar/DESIGN.md +439 -0
- package/web/references/servicenow/DESIGN.md +289 -0
- package/web/references/shiftee/DESIGN.md +468 -0
- package/web/references/shinhanbank/DESIGN.md +161 -341
- package/web/references/shinhancard/DESIGN.md +208 -319
- package/web/references/sionic/DESIGN.md +454 -0
- package/web/references/sktelecom/DESIGN.md +310 -0
- package/web/references/socar/DESIGN.md +125 -32
- package/web/references/softbank/DESIGN.md +231 -0
- package/web/references/solapi/DESIGN.md +483 -0
- package/web/references/sony/DESIGN.md +234 -0
- package/web/references/soop/DESIGN.md +261 -0
- package/web/references/spacex/DESIGN.md +184 -323
- package/web/references/spotify/DESIGN.md +253 -394
- package/web/references/squeezebits/DESIGN.md +441 -0
- package/web/references/stayfolio/DESIGN.md +422 -0
- package/web/references/stripe/DESIGN.md +212 -491
- package/web/references/supabase/DESIGN.md +244 -316
- package/web/references/supertone/DESIGN.md +413 -0
- package/web/references/tabling/DESIGN.md +415 -0
- package/web/references/taishinbank/DESIGN.md +243 -0
- package/web/references/teamlab/DESIGN.md +240 -0
- package/web/references/teamsparta/DESIGN.md +472 -0
- package/web/references/tellingme/DESIGN.md +392 -0
- package/web/references/tesla/DESIGN.md +244 -427
- package/web/references/thsr/DESIGN.md +284 -0
- package/web/references/thumbtack/DESIGN.md +302 -0
- package/web/references/together.ai/DESIGN.md +257 -304
- package/web/references/toss/DESIGN.md +251 -593
- package/web/references/toss-securities/DESIGN.md +255 -178
- package/web/references/tossbank/DESIGN.md +195 -491
- package/web/references/toyota/DESIGN.md +238 -0
- package/web/references/tving/DESIGN.md +197 -245
- package/web/references/typed/DESIGN.md +413 -0
- package/web/references/uber/DESIGN.md +256 -333
- package/web/references/udn/DESIGN.md +250 -0
- package/web/references/upbit/DESIGN.md +145 -256
- package/web/references/upstage/DESIGN.md +211 -204
- package/web/references/uswds/DESIGN.md +287 -0
- package/web/references/vercel/DESIGN.md +236 -440
- package/web/references/vuno/DESIGN.md +413 -0
- package/web/references/wanted/DESIGN.md +215 -487
- package/web/references/weverse/DESIGN.md +437 -0
- package/web/references/wise/DESIGN.md +223 -231
- package/web/references/wisetracker/DESIGN.md +462 -0
- package/web/references/wooribank/DESIGN.md +245 -0
- package/web/references/yanolja/DESIGN.md +250 -419
- package/web/references/yeogiotte/DESIGN.md +235 -418
- package/web/references/zapier/DESIGN.md +256 -377
- package/web/references/zendesk/DESIGN.md +288 -0
- package/web/references/zigzag/DESIGN.md +200 -621
- package/dist/install-skills-7UUDOLG2.js +0 -734
- package/dist/install-skills-7UUDOLG2.js.map +0 -1
|
@@ -9,271 +9,296 @@ primary_color: "#ff4438"
|
|
|
9
9
|
logo:
|
|
10
10
|
type: favicon
|
|
11
11
|
slug: "https://www.google.com/s2/favicons?domain=classum.com&sz=256"
|
|
12
|
-
verified: "2026-
|
|
12
|
+
verified: "2026-07-13"
|
|
13
13
|
omd: "0.1"
|
|
14
|
+
verification_v2:
|
|
15
|
+
schema: 2
|
|
16
|
+
checked: "2026-07-13"
|
|
17
|
+
surfaces:
|
|
18
|
+
- { id: home, kind: public-marketing, url: "https://business.classum.com/", inspected: "2026-07-13" }
|
|
19
|
+
- { id: learning, kind: public-marketing, url: "https://business.classum.com/learning", inspected: "2026-07-13" }
|
|
20
|
+
- { id: university-lms, kind: public-marketing, url: "https://business.classum.com/university/lms", inspected: "2026-07-13" }
|
|
21
|
+
sources:
|
|
22
|
+
- { id: home-capture, kind: product-surface, url: "https://business.classum.com/", captured: "2026-07-13" }
|
|
23
|
+
- { id: learning-capture, kind: product-surface, url: "https://business.classum.com/learning", captured: "2026-07-13" }
|
|
24
|
+
- { id: university-lms-capture, kind: product-surface, url: "https://business.classum.com/university/lms", captured: "2026-07-13" }
|
|
25
|
+
- { id: company-context, kind: official-doc, url: "https://business.classum.com/", captured: "2026-07-13" }
|
|
26
|
+
- { id: lms-context, kind: official-doc, url: "https://business.classum.com/university/lms", captured: "2026-07-13" }
|
|
27
|
+
- { id: culture-context, kind: official-doc, url: "https://careers.classum.com/culture", captured: "2026-07-13" }
|
|
28
|
+
- { id: font-design, kind: official-doc, url: "https://github.com/orioncactus/pretendard/blob/main/packages/pretendard/docs/en/README.md", captured: "2026-07-13" }
|
|
29
|
+
- { id: font-license, kind: license, url: "https://github.com/orioncactus/pretendard/blob/main/LICENSE", captured: "2026-07-13" }
|
|
30
|
+
conflicts: []
|
|
31
|
+
claims:
|
|
32
|
+
"tokens.colors.primary": &home { surface_id: home, source_id: home-capture, method: computed-style, captured: "2026-07-13" }
|
|
33
|
+
"tokens.colors.canvas": *home
|
|
34
|
+
"tokens.colors.surface": *home
|
|
35
|
+
"tokens.colors.ink": *home
|
|
36
|
+
"tokens.colors.body": *home
|
|
37
|
+
"tokens.colors.muted": &lms { surface_id: university-lms, source_id: university-lms-capture, method: computed-style, captured: "2026-07-13" }
|
|
38
|
+
"tokens.colors.on-primary": *home
|
|
39
|
+
"tokens.typography.family.ui": *home
|
|
40
|
+
"tokens.typography.marketing-body.size": *home
|
|
41
|
+
"tokens.typography.marketing-body.weight": *home
|
|
42
|
+
"tokens.typography.marketing-body.lineHeight": *home
|
|
43
|
+
"tokens.typography.marketing-body.use": *home
|
|
44
|
+
"tokens.typography.marketing-heading.size": *home
|
|
45
|
+
"tokens.typography.marketing-heading.weight": *home
|
|
46
|
+
"tokens.typography.marketing-heading.lineHeight": *home
|
|
47
|
+
"tokens.typography.marketing-heading.use": *home
|
|
48
|
+
"tokens.typography.action.size": *home
|
|
49
|
+
"tokens.typography.action.weight": *home
|
|
50
|
+
"tokens.typography.action.lineHeight": *home
|
|
51
|
+
"tokens.typography.action.use": *home
|
|
52
|
+
"tokens.spacing.xs": *home
|
|
53
|
+
"tokens.spacing.sm": *home
|
|
54
|
+
"tokens.spacing.md": *home
|
|
55
|
+
"tokens.spacing.card": *lms
|
|
56
|
+
"tokens.rounded.control": *home
|
|
57
|
+
"tokens.rounded.card-item": *lms
|
|
58
|
+
"tokens.rounded.card": *lms
|
|
59
|
+
"tokens.shadow.flat": *home
|
|
60
|
+
"tokens.components.nav-primary-action.type": *home
|
|
61
|
+
"tokens.components.nav-primary-action.bg": *home
|
|
62
|
+
"tokens.components.nav-primary-action.fg": *home
|
|
63
|
+
"tokens.components.nav-primary-action.radius": *home
|
|
64
|
+
"tokens.components.nav-primary-action.padding": *home
|
|
65
|
+
"tokens.components.nav-primary-action.font": *home
|
|
66
|
+
"tokens.components.nav-primary-action.states": *home
|
|
67
|
+
"tokens.components.nav-primary-action.use": *home
|
|
68
|
+
"tokens.components.nav-outline-light.type": *home
|
|
69
|
+
"tokens.components.nav-outline-light.fg": *home
|
|
70
|
+
"tokens.components.nav-outline-light.border": *home
|
|
71
|
+
"tokens.components.nav-outline-light.radius": *home
|
|
72
|
+
"tokens.components.nav-outline-light.padding": *home
|
|
73
|
+
"tokens.components.nav-outline-light.font": *home
|
|
74
|
+
"tokens.components.nav-outline-light.states": *home
|
|
75
|
+
"tokens.components.nav-outline-light.use": *home
|
|
76
|
+
"tokens.components.nav-outline-dark.type": *home
|
|
77
|
+
"tokens.components.nav-outline-dark.fg": *home
|
|
78
|
+
"tokens.components.nav-outline-dark.border": *home
|
|
79
|
+
"tokens.components.nav-outline-dark.radius": *home
|
|
80
|
+
"tokens.components.nav-outline-dark.padding": *home
|
|
81
|
+
"tokens.components.nav-outline-dark.font": *home
|
|
82
|
+
"tokens.components.nav-outline-dark.states": *home
|
|
83
|
+
"tokens.components.nav-outline-dark.use": *home
|
|
84
|
+
"tokens.components.large-primary-action.type": *home
|
|
85
|
+
"tokens.components.large-primary-action.bg": *home
|
|
86
|
+
"tokens.components.large-primary-action.fg": *home
|
|
87
|
+
"tokens.components.large-primary-action.radius": *home
|
|
88
|
+
"tokens.components.large-primary-action.padding": *home
|
|
89
|
+
"tokens.components.large-primary-action.font": *home
|
|
90
|
+
"tokens.components.large-primary-action.states": *home
|
|
91
|
+
"tokens.components.large-primary-action.use": *home
|
|
92
|
+
"tokens.components.university-grid-card.type": *lms
|
|
93
|
+
"tokens.components.university-grid-card.bg": *lms
|
|
94
|
+
"tokens.components.university-grid-card.fg": *lms
|
|
95
|
+
"tokens.components.university-grid-card.radius": *lms
|
|
96
|
+
"tokens.components.university-grid-card.padding": *lms
|
|
97
|
+
"tokens.components.university-grid-card.font": *lms
|
|
98
|
+
"tokens.components.university-grid-card.states": *lms
|
|
99
|
+
"tokens.components.university-grid-card.use": *lms
|
|
14
100
|
tokens:
|
|
15
|
-
source:
|
|
16
|
-
extracted: "2026-
|
|
101
|
+
source: reconciled
|
|
102
|
+
extracted: "2026-07-13"
|
|
103
|
+
note: "Values are selector-backed public marketing claims from three supplied captures. No authenticated Classum product UI, documentation chrome, interaction transition, or declared-only font is promoted."
|
|
17
104
|
colors:
|
|
18
105
|
primary: "#ff4438"
|
|
19
|
-
brand: "#ff4438"
|
|
20
106
|
canvas: "#f6f6f9"
|
|
21
107
|
surface: "#ffffff"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
foreground: "#232334"
|
|
25
|
-
body: "#49495a"
|
|
108
|
+
ink: "#232334"
|
|
109
|
+
body: "#333333"
|
|
26
110
|
muted: "#666b80"
|
|
27
|
-
inert: "#758696"
|
|
28
|
-
hairline: "#b5b9c8"
|
|
29
111
|
on-primary: "#ffffff"
|
|
30
|
-
accent-sky: "#0a84ff"
|
|
31
|
-
accent-cobalt: "#243ce7"
|
|
32
|
-
accent-violet: "#a567e4"
|
|
33
|
-
accent-teal: "#00c3d0"
|
|
34
|
-
success: "#34c759"
|
|
35
|
-
warning: "#ffb020"
|
|
36
|
-
danger: "#ff4438"
|
|
37
112
|
typography:
|
|
38
|
-
family: {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
rounded: { xs: 4, sm: 8, md: 16, lg: 20, xl: 30, full: 9999 }
|
|
46
|
-
shadow:
|
|
47
|
-
none: "none"
|
|
48
|
-
float: "rgba(0,0,0,0.08) 0px 8px 24px"
|
|
49
|
-
components_harvested: true
|
|
113
|
+
family: { ui: "Pretendard Variable" }
|
|
114
|
+
marketing-body: { size: 14, weight: 400, lineHeight: 1.43, use: "Repeated public-marketing text/card sample" }
|
|
115
|
+
marketing-heading: { size: 52, weight: 700, lineHeight: 1.40, use: "Public-marketing H1/H2 sample" }
|
|
116
|
+
action: { size: 15, weight: 600, lineHeight: 1.50, use: "Repeated public-marketing navigation action" }
|
|
117
|
+
spacing: { xs: 6, sm: 8, md: 16, card: 30 }
|
|
118
|
+
rounded: { control: 8, card-item: 12, card: 30 }
|
|
119
|
+
shadow: { flat: "none" }
|
|
50
120
|
components:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
nav: { type:
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
121
|
+
nav-primary-action: { type: button, bg: "#ff4438", fg: "#ffffff", radius: "8px", padding: "6px 16px", font: "15px / 600 Pretendard Variable", states: "default only; no interaction state captured", use: "Public marketing navigation CTA; home::[data-omd-capture=4]" }
|
|
122
|
+
nav-outline-light: { type: button, fg: "#ff4438", border: "1px solid #ff4438", radius: "8px", padding: "6px 16px", font: "15px / 600 Pretendard Variable", states: "default only; no interaction state captured", use: "Public marketing light-background navigation outline; home::[data-omd-capture=3]" }
|
|
123
|
+
nav-outline-dark: { type: button, fg: "#ffffff", border: "1px solid #ffffff", radius: "8px", padding: "6px 16px", font: "15px / 600 Pretendard Variable", states: "default only; no interaction state captured", use: "Public marketing dark-background navigation outline; home::[data-omd-capture=8]" }
|
|
124
|
+
large-primary-action: { type: button, bg: "#ff4438", fg: "#ffffff", radius: "8px", padding: "12px 34px", font: "18px / 600 Pretendard Variable", states: "default only; no interaction state captured", use: "Public marketing large CTA on home and learning routes; home::[data-omd-capture=17]" }
|
|
125
|
+
university-grid-card: { type: card, bg: "#f6f6f9", fg: "#333333", radius: "30px", padding: "30px", font: "14px / 400 Pretendard Variable", states: "default only; no interaction state captured", use: "University-LMS public-marketing grid card; university-lms::div.grid-card" }
|
|
126
|
+
components_harvested: true
|
|
57
127
|
---
|
|
58
128
|
|
|
59
129
|
# Design System Inspiration of Classum (클라썸)
|
|
60
130
|
|
|
61
131
|
## 1. Visual Theme & Atmosphere
|
|
62
132
|
|
|
63
|
-
Classum
|
|
64
|
-
|
|
65
|
-
The brand's color discipline is unusually tight for an EdTech site: long stretches of neutral gray-violet surface punctuated by a single high-saturation red (`#FF4438`) that lives almost exclusively on primary CTAs ("도입 문의" / 도입 문의 = "request adoption inquiry"). Accent blues, violets and teals appear inside marketing illustrations and feature pills, but the page's interactive grammar is fundamentally two-color: muted lavender for everything, red when you should click. The result reads as B2B-confident without being corporate-cold — closer to a research lab's recruiting page than a typical SaaS hero.
|
|
133
|
+
Classum’s current public business site presents an AI-focused education offer for universities and corporate HR: the official home frames it as LMS, consultation, and skill solutions, while the university route focuses on an AI LMS for instructors and students. The three supplied routes are public marketing surfaces, not a captured signed-in learning application. Their visual system is therefore recorded as marketing expression only.
|
|
66
134
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
**Key Characteristics:**
|
|
70
|
-
- Lavender-gray canvas (`#F6F6F9`) instead of pure white — softens dense B2B information density
|
|
71
|
-
- Single saturated brand red (`#FF4438`) reserved strictly for primary CTAs
|
|
72
|
-
- Pretendard Variable as the only typeface — open-source Korean sans, jsDelivr-delivered
|
|
73
|
-
- 20px dominant card radius, 8px CTA radius, 999px pills for status chips
|
|
74
|
-
- Flat shadow language — `box-shadow: none` on primary CTA, depth through bg contrast
|
|
75
|
-
- 14px / 1.43 lh body baseline — tight Korean reading rhythm, not Western 16px default
|
|
76
|
-
- Webflow-built site, Channel Talk live chat — typical Korean B2B SaaS stack
|
|
135
|
+
The captured pages pair a lavender-white field (`#F6F6F9` and `#FFFFFF`) with a signal-red action color (`#FF4438`). Large rounded content blocks and compact 8px actions keep the information-heavy pages calm without making their public CTAs look generic. The system is flat in the retained samples: `box-shadow: none` on the documented actions and ordinary grid cards.
|
|
77
136
|
|
|
78
137
|
## 2. Color Palette & Roles
|
|
79
138
|
|
|
80
|
-
|
|
81
|
-
- **
|
|
82
|
-
- **
|
|
83
|
-
- **
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
-
|
|
88
|
-
- **Subtle** (`#F0F2F8`): Tertiary fills, alternating rows, soft section dividers.
|
|
89
|
-
- **Hero Dark** (`#06080D`–`#121215`): Inverted hero/footer band — the rare dark surface where white type takes over.
|
|
90
|
-
|
|
91
|
-
### Neutrals & Text
|
|
92
|
-
- **Ink** (`#232334`): Primary headings and body emphasis.
|
|
93
|
-
- **Slate** (`#49495A`): Secondary body text — descriptions, captions.
|
|
94
|
-
- **Mute** (`#666B80`): Tertiary labels, metadata, breadcrumb.
|
|
95
|
-
- **Subtle** (`#758696`): Disabled / inert text.
|
|
96
|
-
- **Border** (`#B5B9C8`): Card borders, divider rules.
|
|
97
|
-
|
|
98
|
-
### Accent (illustration-only)
|
|
99
|
-
- **Sky** (`#0A84FF`) / **Cobalt** (`#243CE7`): Hyperlinks and product-mark accents.
|
|
100
|
-
- **Violet** (`#A567E4`): AI-feature illustration accents.
|
|
101
|
-
- **Teal** (`#00C3D0`): Skill/competency data visualization.
|
|
102
|
-
- **Green** (`#009A5A` / `#34C759`): Success states, growth metrics in case-study charts.
|
|
103
|
-
|
|
104
|
-
### Semantic
|
|
105
|
-
- Classum does not expose a formal semantic palette publicly; on the marketing surface, semantic color appears almost exclusively inside illustration assets. Inferred semantic mapping below for downstream use.
|
|
106
|
-
- **Success**: `#34C759` (matches iOS system green — likely intentional given Pretendard's Apple-adjacent stack).
|
|
107
|
-
- **Warning**: `#FFB020` (illustration-derived).
|
|
108
|
-
- **Danger**: `#FF4438` (same as brand red — implies CTAs and destructive actions share visual weight; downstream consumers should split this).
|
|
109
|
-
|
|
110
|
-
### Gradient System
|
|
111
|
-
- The site avoids type gradients entirely. Visual gradients appear only in hero illustration backgrounds (blue-violet washes behind product mockups). Functional UI is fully flat.
|
|
139
|
+
- **Signal red** (`#FF4438`) — observed public-marketing action background and outline/action text. It is not asserted as an in-app destructive or status color.
|
|
140
|
+
- **Lavender canvas** (`#F6F6F9`) — observed public-marketing page/card background.
|
|
141
|
+
- **White surface** (`#FFFFFF`) — observed action and surface background.
|
|
142
|
+
- **Dark ink** (`#232334`) — observed dark action/background and text role on public marketing.
|
|
143
|
+
- **Body charcoal** (`#333333`) — repeated public-marketing text and card foreground.
|
|
144
|
+
- **Muted gray-violet** (`#666B80`) — university-LMS public-marketing supporting text sample.
|
|
145
|
+
|
|
146
|
+
No semantic success, warning, error, product-app, or documentation palette is claimed from these captures.
|
|
112
147
|
|
|
113
148
|
## 3. Typography Rules
|
|
114
149
|
|
|
115
|
-
###
|
|
116
|
-
- **All roles**: `Pretendard Variable` — single typeface across hero, body, nav, CTA, footer. The variable axis covers weights 100–900; observed weights in production are 300 / 400 / 500 / 600 / 700.
|
|
117
|
-
- **Source**: `https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css` (SIL OFL 1.1).
|
|
118
|
-
- **Fallback stack**: `-apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif` — Korean-first system fallbacks before Western ones.
|
|
119
|
-
- **Rendering**: `-webkit-font-smoothing: antialiased`, `text-rendering: optimizeLegibility` — applied globally.
|
|
150
|
+
### Verified public-marketing family
|
|
120
151
|
|
|
121
|
-
|
|
122
|
-
- **Hero H1**: 52px / 72.8px line-height / weight 700 — used on the inverted dark hero band.
|
|
123
|
-
- **CTA**: 15px / 22.5px / weight 600 — primary button label.
|
|
124
|
-
- **Nav link**: 14px / 20px / weight 400.
|
|
125
|
-
- **Body / default**: 14px / 20px / weight 400 — note this is *one step below* the Western 16px default, a deliberate Korean-density choice.
|
|
126
|
-
- **Display caption** (illustration labels): observed 11–13px / weight 500–600.
|
|
152
|
+
`Pretendard Variable` is the sole promoted UI family. It appears as the visible computed family across button, card, heading, and text roles (279 observed uses), is backed by a loaded `FontFace`, and has both jsDelivr and Classum-hosted WOFF2 sources in the supplied evidence. The upstream project documents the exact `"Pretendard Variable"` webfont family and distributes it under SIL Open Font License 1.1.
|
|
127
153
|
|
|
128
|
-
|
|
129
|
-
|
|
154
|
+
- **Marketing heading** — `52px / 700 / 72.8px`; observed public H1/H2 sample.
|
|
155
|
+
- **Marketing body** — `14px / 400 / 20px`; repeated public text/card sample.
|
|
156
|
+
- **Navigation action** — `15px / 600 / 22.5px`; repeated public navigation action.
|
|
130
157
|
|
|
131
|
-
|
|
132
|
-
Pretendard's optical sizing handles Korean syllables (한글) at the same metrics as Latin without manual `lang="ko"` overrides. Classum does not appear to use any letter-spacing adjustment for Korean (`letter-spacing: normal` on every observed sample) — trusting Pretendard's default kerning.
|
|
158
|
+
`webflow-icons` is declared in the capture but has zero visible uses. It remains a declared-only icon asset, not a text family. No authenticated product or documentation font family was captured, so none is substituted or inferred.
|
|
133
159
|
|
|
134
|
-
## 4.
|
|
160
|
+
## 4. Component Stylings
|
|
135
161
|
|
|
136
|
-
###
|
|
137
|
-
- `20px` (×18 — dominant card radius)
|
|
138
|
-
- `var(--r-12)` (×12)
|
|
139
|
-
- `999px` (×10 — pill chips)
|
|
140
|
-
- `10px` (×9)
|
|
141
|
-
- `30px` (×8 — large feature cards)
|
|
142
|
-
- `100%` (×8 — circular avatars)
|
|
143
|
-
- `8px` (×7 — CTA buttons)
|
|
144
|
-
- `16px` (×7)
|
|
145
|
-
- `4px` (×7 — input chips)
|
|
162
|
+
### Public marketing navigation primary action
|
|
146
163
|
|
|
147
|
-
|
|
164
|
+
**Default**
|
|
165
|
+
- Background: `#FF4438`
|
|
166
|
+
- Text: `#FFFFFF`
|
|
167
|
+
- Border: `0px solid #FFFFFF`
|
|
168
|
+
- Radius: `8px`
|
|
169
|
+
- Padding: `6px 16px`
|
|
170
|
+
- Font: `15px / 600 Pretendard Variable`
|
|
171
|
+
- Use: Home public-marketing navigation CTA; selector `home::[data-omd-capture="4"]`, six occurrences across the three captured routes.
|
|
148
172
|
|
|
149
|
-
###
|
|
150
|
-
- Container max-width and inner padding are Webflow-grid-driven; observed CTA padding `6px 16px`. The lavender canvas leaves wide unbranded margins between sections — vertical rhythm comes from 80–120px section padding.
|
|
173
|
+
### Public marketing navigation outline on light
|
|
151
174
|
|
|
152
|
-
|
|
153
|
-
-
|
|
175
|
+
**Default**
|
|
176
|
+
- Background: transparent
|
|
177
|
+
- Text: `#FF4438`
|
|
178
|
+
- Border: `1px solid #FF4438`
|
|
179
|
+
- Radius: `8px`
|
|
180
|
+
- Padding: `6px 16px`
|
|
181
|
+
- Font: `15px / 600 Pretendard Variable`
|
|
182
|
+
- Use: Home public-marketing light-background navigation action; selector `home::[data-omd-capture="3"]`, three occurrences across the captured routes.
|
|
154
183
|
|
|
155
|
-
|
|
184
|
+
### Public marketing navigation outline on dark
|
|
156
185
|
|
|
157
|
-
|
|
158
|
-
-
|
|
159
|
-
-
|
|
160
|
-
-
|
|
161
|
-
-
|
|
162
|
-
-
|
|
163
|
-
-
|
|
186
|
+
**Default**
|
|
187
|
+
- Background: transparent
|
|
188
|
+
- Text: `#FFFFFF`
|
|
189
|
+
- Border: `1px solid #FFFFFF`
|
|
190
|
+
- Radius: `8px`
|
|
191
|
+
- Padding: `6px 16px`
|
|
192
|
+
- Font: `15px / 600 Pretendard Variable`
|
|
193
|
+
- Use: Home public-marketing dark-background navigation action; selector `home::[data-omd-capture="8"]`, three occurrences across the captured routes.
|
|
164
194
|
|
|
165
|
-
|
|
195
|
+
### Public marketing large primary action
|
|
166
196
|
|
|
167
|
-
|
|
168
|
-
-
|
|
169
|
-
-
|
|
170
|
-
-
|
|
197
|
+
**Default**
|
|
198
|
+
- Background: `#FF4438`
|
|
199
|
+
- Text: `#FFFFFF`
|
|
200
|
+
- Border: `0px solid #FFFFFF`
|
|
201
|
+
- Radius: `8px`
|
|
202
|
+
- Padding: `12px 34px`
|
|
203
|
+
- Font: `18px / 600 Pretendard Variable`
|
|
204
|
+
- Use: Home and learning public-marketing large CTA; selector `home::[data-omd-capture="17"]`, two occurrences across those routes.
|
|
171
205
|
|
|
172
|
-
|
|
206
|
+
### University-LMS public-marketing grid card
|
|
173
207
|
|
|
174
|
-
|
|
208
|
+
**Default**
|
|
209
|
+
- Background: `#F6F6F9`
|
|
210
|
+
- Text: `#333333`
|
|
211
|
+
- Border: `0px solid #333333`
|
|
212
|
+
- Radius: `30px`
|
|
213
|
+
- Padding: `30px`
|
|
214
|
+
- Font: `14px / 400 Pretendard Variable`
|
|
215
|
+
- Use: University-LMS public-marketing grid card; selector `university-lms::div.grid-card`, two occurrences on that route.
|
|
175
216
|
|
|
176
|
-
|
|
177
|
-
- Lead with the operational benefit (efficiency, data consolidation), follow with the human outcome (autonomous growth, communication).
|
|
178
|
-
- Use AI as a modifier, not as a noun headline ("AI 기반 LMS" vs "AI for education").
|
|
179
|
-
- Audience-segmented copy: separate doors for universities and corporate HR, never a unified "for everyone" pitch.
|
|
217
|
+
The supplied bundle records zero interaction transitions. Hover, focus, pressed, selected, disabled, dialog, menu, tab, toast, and form-error variants are deliberately absent rather than invented.
|
|
180
218
|
|
|
181
|
-
|
|
219
|
+
## 5. Layout Principles
|
|
182
220
|
|
|
183
|
-
|
|
221
|
+
- The retained public routes use recurring 6px, 8px, 16px, and 30px spacing measurements; 30px is attached to the documented university-LMS cards, not promoted as a global application gutter.
|
|
222
|
+
- The public marketing page moves between compact navigation controls and large rounded content blocks. No responsive breakpoint, signed-in application layout, or documentation layout was captured.
|
|
223
|
+
- Use surface-local component geometry above; do not reuse a marketing CTA as an LMS workflow control without separate product evidence.
|
|
184
224
|
|
|
185
|
-
|
|
186
|
-
- Scroll-triggered fades on section reveal (Webflow IX2).
|
|
187
|
-
- No marquee, no parallax beyond Webflow defaults, no auto-rotating hero carousel.
|
|
188
|
-
- Live chat (Channel Talk) is the one persistent interactive element bottom-right.
|
|
225
|
+
## 6. Depth & Elevation
|
|
189
226
|
|
|
190
|
-
|
|
227
|
+
The retained navigation actions and standard university-LMS grid card report `box-shadow: none`. One decorative university grid-card variant has a multicolor shadow in the raw evidence, but it is a separate `gradient-11` marketing decoration and is not generalized into the canonical elevation token. Treat the verified public marketing system as flat.
|
|
191
228
|
|
|
192
|
-
|
|
193
|
-
business.classum.com/
|
|
194
|
-
├── Hero (dark band, AI 에듀테크 솔루션 positioning)
|
|
195
|
-
├── Product pillars (4): AI LMS / Learning Community / Classum Connect / Skill Solution
|
|
196
|
-
├── Audience split: 대학 vs 기업 HRD
|
|
197
|
-
├── Case studies
|
|
198
|
-
├── Resources (브로셔, 블로그, 채용)
|
|
199
|
-
└── Footer (dark, legal + social + app badges)
|
|
200
|
-
```
|
|
229
|
+
## 7. Do's and Don'ts
|
|
201
230
|
|
|
202
|
-
|
|
231
|
+
### Do
|
|
232
|
+
- Use `#FF4438` only where the captured public-marketing surface shows an action or outline action.
|
|
233
|
+
- Keep verified public marketing type in `Pretendard Variable` and preserve the observed 14px body and 15px compact-action scales.
|
|
234
|
+
- Use 8px for documented actions and 30px only for the documented university-LMS public grid-card treatment.
|
|
235
|
+
- Keep marketing cards flat unless a separately evidenced decorative variant is intentionally being reproduced.
|
|
203
236
|
|
|
237
|
+
### Don't
|
|
238
|
+
- Do not turn the public marketing red into an unverified product-state or destructive-action palette.
|
|
239
|
+
- Do not substitute system fonts for the loaded `Pretendard Variable` family.
|
|
240
|
+
- Do not fabricate app controls, documentation chrome, form states, or interaction states from the public landing pages.
|
|
241
|
+
- Do not treat the decorative multicolor-shadow card as a default card elevation.
|
|
204
242
|
|
|
205
|
-
##
|
|
243
|
+
## 8. Responsive Behavior
|
|
206
244
|
|
|
207
|
-
|
|
208
|
-
- Reserve the saturated brand red `#FF4438` strictly for primary CTA fills like "도입 문의", and let everything else stay in the lavender-gray neutral range
|
|
209
|
-
- Set the page background to the barely-tinted lavender-gray canvas `#F6F6F9` rather than pure white, so white cards (`#FFFFFF`) read as elevated through background contrast alone
|
|
210
|
-
- Typeset every role — hero, body, nav, CTA, footer — in Pretendard Variable, using only the production weights 300/400/500/600/700 served from the jsDelivr CDN
|
|
211
|
-
- Build hierarchy by jumping from weight 400 to 600/700 (bold-vs-regular contrast) instead of leaning on mid-weight 500 transitions
|
|
212
|
-
- Apply the disciplined radius ladder — 8px on CTA buttons, 20px on content cards, 30px on large feature cards, 999px on pill chips — with no in-between 2px/6px/14px noise
|
|
213
|
-
- Use Ink `#232334` (a warm navy-charcoal, not true black) for primary headings, with Slate `#49495A` for secondary body text and Mute `#666B80` for tertiary labels
|
|
245
|
+
The supplied evidence is desktop `1440×900` only. It establishes no mobile breakpoint, mobile navigation state, or responsive component transformation. Preserve this uncertainty rather than extrapolating desktop marketing geometry into mobile or authenticated LMS behavior.
|
|
214
246
|
|
|
215
|
-
|
|
216
|
-
- Spread `#FF4438` onto body type, decorative blocks, or a second button color — there is one button color for one job
|
|
217
|
-
- Stack box-shadows for elevation on marketing surfaces; the primary CTA ships `box-shadow: none` and depth comes from canvas-vs-card contrast, reserving shadows only for floating UI like modals, dropdowns, and the chat widget
|
|
218
|
-
- Pad the layout to a Western 16px body baseline — keep the deliberate Korean-density 14px / 1.43 line-height reading rhythm
|
|
219
|
-
- Introduce serif accents, all-caps display type, decorative scripts, glassmorphism, or emoji-led headlines, all of which Classum's B2B-serious surface refuses
|
|
220
|
-
- Write a generic "everyone benefits" pitch — every section should name its audience (대학 vs 기업 HRD) before splitting by feature
|
|
221
|
-
- Add type gradients or auto-rotating hero carousels; gradients live only in hero illustration backdrops and functional UI stays fully flat
|
|
247
|
+
## 9. Agent Prompt Guide
|
|
222
248
|
|
|
223
|
-
|
|
249
|
+
For a Classum public-marketing surface, use the verified lavender canvas, white surfaces, `Pretendard Variable`, and red action treatment only in the source domain where each was observed. Prefer a flat composition with compact 8px navigation actions and route-local 30px university feature cards. If a task concerns an authenticated learner, instructor, administrator, documentation, form validation, or interactive state, request or collect that source-domain evidence before choosing components or tokens.
|
|
224
250
|
|
|
225
|
-
## 10.
|
|
251
|
+
## 10. Voice & Tone
|
|
226
252
|
|
|
227
|
-
|
|
253
|
+
The current public copy is direct, formal Korean B2B/education copy: it names the audience (university, instructor, student, or HR) and pairs AI capability with an operational or learning outcome. Preserve that observed posture rather than inventing a casual consumer voice.
|
|
228
254
|
|
|
229
|
-
|
|
255
|
+
| Context | Observed guidance |
|
|
256
|
+
|---|---|
|
|
257
|
+
| Public headline | Lead with the educational or operational result, then name the audience. |
|
|
258
|
+
| CTA | Use short functional actions such as requesting material or making an inquiry. |
|
|
259
|
+
| Product explanation | Describe the specific learning or administrative task before the AI capability. |
|
|
230
260
|
|
|
231
|
-
|
|
232
|
-
2. **Korean-density typography.** 14px body, 1.43 lh — accept that Korean readers parse syllables faster and don't pad like Western sites.
|
|
233
|
-
3. **Flat by default, depth on demand.** Marketing pages are shadow-free; reserve elevation for floating UI (modals, chat).
|
|
234
|
-
4. **Audience-first IA.** Split surfaces by buyer (university vs HR) before splitting by feature.
|
|
235
|
-
5. **Open-source over proprietary.** Pretendard, Webflow, Channel Talk — Classum optimizes for time-to-iterate, not for owning every layer.
|
|
261
|
+
## 11. Brand Narrative
|
|
236
262
|
|
|
237
|
-
|
|
263
|
+
Classum’s official historical material says the company was founded in 2018 by Chaerin Lee and Youjin Choi to address challenges they experienced as learners. Its current public home describes an AI-centered set of LMS, consultation, and skill solutions for university and corporate-HR audiences; the university LMS page concentrates on reducing preparation and evaluation work so instructors can focus on students. The narrative here is confined to those first-party statements and does not claim unobserved product-design intent.
|
|
238
264
|
|
|
239
|
-
|
|
240
|
-
- No serif accents, no all-caps display type, no decorative scripts.
|
|
241
|
-
- No glassmorphism, no skeuomorphic shadow stacks.
|
|
242
|
-
- No emoji-led marketing headlines (rare for a 2026 Korean SaaS — a deliberate signal of B2B seriousness).
|
|
243
|
-
- No "everyone benefits" generic pitches — every section names its audience.
|
|
265
|
+
## 12. Principles
|
|
244
266
|
|
|
245
|
-
|
|
267
|
+
1. **Name the education context.** Current public pages separate university and corporate-HR offers. *UI implication:* keep public navigation and feature groups audience-specific.
|
|
268
|
+
2. **Connect AI to a concrete task.** The university LMS page describes preparation, quizzes, grading, feedback, and learner support. *UI implication:* pair an AI claim with the supported learning task.
|
|
269
|
+
3. **Keep public calls to action legible.** The repeated public navigation action is red on white with an 8px radius. *UI implication:* retain the verified action hierarchy on comparable public marketing routes only.
|
|
246
270
|
|
|
247
|
-
|
|
248
|
-
- **기업 HRD 매니저 (Corporate L&D Manager)**: needs measurable skill assessment + scalable internal community. Cares about completion rates, skill-gap analytics, integration with HRIS.
|
|
249
|
-
- **AI 도입 검토자 (AI Procurement Reviewer)**: needs vendor with clear data-handling story, evaluates Classum Connect against in-house GPT pilots.
|
|
271
|
+
## 13. Personas
|
|
250
272
|
|
|
251
|
-
|
|
273
|
+
The following are source-bound audience roles, not synthetic user research.
|
|
252
274
|
|
|
253
|
-
-
|
|
254
|
-
-
|
|
255
|
-
-
|
|
256
|
-
- Channel Talk widget injects its own focus order; keyboard-only navigation on the marketing site is otherwise clean.
|
|
275
|
+
- **University instructor:** explicitly addressed on the public LMS page in the context of lesson preparation, assessment, feedback, and student-focused teaching.
|
|
276
|
+
- **University student:** explicitly addressed on the same page as a participant in AI-supported, self-directed learning.
|
|
277
|
+
- **Corporate HR audience:** explicitly named on the official home as the audience for Classum’s corporate/skill-solution offer.
|
|
257
278
|
|
|
258
|
-
|
|
279
|
+
No behavioral, demographic, or satisfaction claims are inferred beyond those public audience descriptions.
|
|
259
280
|
|
|
260
|
-
|
|
261
|
-
**Tier 1 — Live inspect (succeeded):**
|
|
262
|
-
- CDP `getComputedStyle` × 6 raw samples (hero h1, nav, primary CTA, secondary link, body, section card) on `https://business.classum.com/` — captured in `assets/_reference/.live-inspect-proof.json`.
|
|
263
|
-
- Production CSS bundle frequency analysis on `https://cdn.prod.website-files.com/67b08d840cb9f278763c8005/css/classum-web.webflow.shared.ee81640c2.css` (13,904 lines).
|
|
281
|
+
## 14. States
|
|
264
282
|
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
283
|
+
| State | Evidence boundary |
|
|
284
|
+
|---|---|
|
|
285
|
+
| Empty | Not captured on the three public marketing routes. |
|
|
286
|
+
| Loading | Not captured. |
|
|
287
|
+
| Inline error | Not captured. |
|
|
288
|
+
| Form error | Not captured. |
|
|
289
|
+
| Success | Not captured. |
|
|
290
|
+
| Disabled | Not captured. |
|
|
291
|
+
| Skeleton | Not captured. |
|
|
292
|
+
| Hover | Not captured; interaction count is zero. |
|
|
293
|
+
| Focus | Not captured; interaction count is zero. |
|
|
294
|
+
| Pressed | Not captured; interaction count is zero. |
|
|
269
295
|
|
|
270
|
-
|
|
271
|
-
- `getdesign.md/classum` → "No designs found for 'classum'." (consistent with KR-10 systemic finding that English directories under-index Korean SaaS).
|
|
272
|
-
- `styles.refero.design/?q=classum` → no entry returned.
|
|
296
|
+
## 15. Motion & Easing
|
|
273
297
|
|
|
274
|
-
|
|
298
|
+
No motion timing, easing token, or interaction transition is promoted. The supplied capture reports zero interaction kinds and zero interaction events. A future source-specific inspection is required before defining public marketing, authenticated product, or documentation motion behavior.
|
|
275
299
|
|
|
276
|
-
|
|
277
|
-
-
|
|
278
|
-
|
|
279
|
-
|
|
300
|
+
---
|
|
301
|
+
**Verified:** 2026-07-13
|
|
302
|
+
**Tier 1 sources:** https://business.classum.com/ · https://business.classum.com/learning · https://business.classum.com/university/lms · https://careers.classum.com/culture · https://github.com/orioncactus/pretendard/blob/main/packages/pretendard/docs/en/README.md · https://github.com/orioncactus/pretendard/blob/main/LICENSE
|
|
303
|
+
**Tier 2 sources:** https://getdesign.md/classum (retrieval attempted; no importable record returned) · https://styles.refero.design/?q=classum (retrieval attempted; no importable record returned)
|
|
304
|
+
**Conflicts unresolved:** none
|