zugzbot 1.3.0 → 1.5.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/.opencode/agents/sdd-coder.md +5 -4
- package/.opencode/agents/sdd-orchestrator.md +9 -8
- package/.opencode/agents/sdd-spec-writer.md +3 -4
- package/.opencode/commands/loop.md +1 -1
- package/.opencode/plugins/loop-enforcer.ts +0 -1
- package/.opencode/plugins/sdd-bridge.ts +1 -1
- package/.opencode/rules/sdd-global.md +9 -5
- package/.opencode/scripts/lint-charts.js +1 -2
- package/.opencode/skills/sdd-foundation-overview/SKILL.md +3 -4
- package/.opencode/skills/sdd-methodology/SKILL.md +8 -10
- package/.opencode/skills/sdd-quickstart/SKILL.md +5 -9
- package/.opencode/skills/shadcn-templates/SKILL.md +71 -15
- package/.opencode/templates/nextjs-shadcn/components.json +2 -1
- package/.opencode/tools/sdd_catalog.ts +335 -20
- package/.opencode/tools/sdd_core.ts +8 -6
- package/.opencode/tools/sdd_lucide.ts +112 -0
- package/README.md +1 -7
- package/opencode.json +0 -10
- package/package.json +1 -3
- package/.opencode/oh-my-design/design-md/11st/.verification.md +0 -37
- package/.opencode/oh-my-design/design-md/11st/DESIGN.md +0 -400
- package/.opencode/oh-my-design/design-md/17live/DESIGN.md +0 -467
- package/.opencode/oh-my-design/design-md/29cm/DESIGN.md +0 -495
- package/.opencode/oh-my-design/design-md/29cm/_promo.json +0 -23
- package/.opencode/oh-my-design/design-md/29cm/_research.md +0 -103
- package/.opencode/oh-my-design/design-md/3o3/.verification.md +0 -73
- package/.opencode/oh-my-design/design-md/3o3/DESIGN.md +0 -454
- package/.opencode/oh-my-design/design-md/91app/.verification.md +0 -25
- package/.opencode/oh-my-design/design-md/91app/DESIGN.md +0 -182
- package/.opencode/oh-my-design/design-md/abema/.verification.md +0 -64
- package/.opencode/oh-my-design/design-md/abema/DESIGN.md +0 -535
- package/.opencode/oh-my-design/design-md/ably/DESIGN.md +0 -646
- package/.opencode/oh-my-design/design-md/ably/_promo.json +0 -18
- package/.opencode/oh-my-design/design-md/ably/_research.md +0 -120
- package/.opencode/oh-my-design/design-md/accupass/.verification.md +0 -66
- package/.opencode/oh-my-design/design-md/accupass/DESIGN.md +0 -494
- package/.opencode/oh-my-design/design-md/adobe/.verification.md +0 -63
- package/.opencode/oh-my-design/design-md/adobe/DESIGN.md +0 -458
- package/.opencode/oh-my-design/design-md/airbnb/.verification.md +0 -143
- package/.opencode/oh-my-design/design-md/airbnb/DESIGN.md +0 -639
- package/.opencode/oh-my-design/design-md/airbnb/README.md +0 -23
- package/.opencode/oh-my-design/design-md/airbnb/preview-dark.html +0 -234
- package/.opencode/oh-my-design/design-md/airbnb/preview.html +0 -233
- package/.opencode/oh-my-design/design-md/airtable/.verification.md +0 -136
- package/.opencode/oh-my-design/design-md/airtable/DESIGN.md +0 -314
- package/.opencode/oh-my-design/design-md/airtable/README.md +0 -23
- package/.opencode/oh-my-design/design-md/airtable/preview-dark.html +0 -165
- package/.opencode/oh-my-design/design-md/airtable/preview.html +0 -164
- package/.opencode/oh-my-design/design-md/alipay/DESIGN.md +0 -506
- package/.opencode/oh-my-design/design-md/amazingtalker/.verification.md +0 -38
- package/.opencode/oh-my-design/design-md/amazingtalker/DESIGN.md +0 -434
- package/.opencode/oh-my-design/design-md/appier/DESIGN.md +0 -465
- package/.opencode/oh-my-design/design-md/apple/.verification.md +0 -162
- package/.opencode/oh-my-design/design-md/apple/DESIGN.md +0 -613
- package/.opencode/oh-my-design/design-md/apple/README.md +0 -24
- package/.opencode/oh-my-design/design-md/apple/preview-dark.html +0 -420
- package/.opencode/oh-my-design/design-md/apple/preview.html +0 -414
- package/.opencode/oh-my-design/design-md/baemin/.verification.md +0 -132
- package/.opencode/oh-my-design/design-md/baemin/DESIGN.md +0 -578
- package/.opencode/oh-my-design/design-md/baemin/README.md +0 -19
- package/.opencode/oh-my-design/design-md/baemin/_research.md +0 -84
- package/.opencode/oh-my-design/design-md/banksalad/DESIGN.md +0 -688
- package/.opencode/oh-my-design/design-md/banksalad/_promo.json +0 -29
- package/.opencode/oh-my-design/design-md/banksalad/_research.md +0 -190
- package/.opencode/oh-my-design/design-md/bilibili/DESIGN.md +0 -471
- package/.opencode/oh-my-design/design-md/bithumb/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/bithumb/DESIGN.md +0 -208
- package/.opencode/oh-my-design/design-md/bmw/.verification.md +0 -114
- package/.opencode/oh-my-design/design-md/bmw/DESIGN.md +0 -360
- package/.opencode/oh-my-design/design-md/bmw/README.md +0 -23
- package/.opencode/oh-my-design/design-md/bmw/preview-dark.html +0 -211
- package/.opencode/oh-my-design/design-md/bmw/preview.html +0 -210
- package/.opencode/oh-my-design/design-md/brandi/.verification.md +0 -29
- package/.opencode/oh-my-design/design-md/brandi/DESIGN.md +0 -414
- package/.opencode/oh-my-design/design-md/bunjang/DESIGN.md +0 -374
- package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/.live-inspect-proof.json +0 -260
- package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/fonts.json +0 -33
- package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/logo-icon.svg +0 -10
- package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/structure.json +0 -131
- package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/tokens.json +0 -147
- package/.opencode/oh-my-design/design-md/cakeresume/.verification.md +0 -25
- package/.opencode/oh-my-design/design-md/cakeresume/DESIGN.md +0 -191
- package/.opencode/oh-my-design/design-md/cal/.verification.md +0 -145
- package/.opencode/oh-my-design/design-md/cal/DESIGN.md +0 -481
- package/.opencode/oh-my-design/design-md/cal/README.md +0 -23
- package/.opencode/oh-my-design/design-md/cal/preview-dark.html +0 -449
- package/.opencode/oh-my-design/design-md/cal/preview.html +0 -575
- package/.opencode/oh-my-design/design-md/catchtable/DESIGN.md +0 -341
- package/.opencode/oh-my-design/design-md/catchtable/_research.md +0 -54
- package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-proof.json +0 -204
- package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-raw.json +0 -22
- package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/fonts.json +0 -21
- package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/structure.json +0 -42
- package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/tokens.json +0 -95
- package/.opencode/oh-my-design/design-md/cathay/.verification.md +0 -44
- package/.opencode/oh-my-design/design-md/cathay/DESIGN.md +0 -432
- package/.opencode/oh-my-design/design-md/channeltalk/DESIGN.md +0 -422
- package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/.live-inspect-proof.json +0 -320
- package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/fonts.json +0 -53
- package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/structure.json +0 -47
- package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/tokens.json +0 -78
- package/.opencode/oh-my-design/design-md/class101/DESIGN.md +0 -484
- package/.opencode/oh-my-design/design-md/classting/.verification.md +0 -32
- package/.opencode/oh-my-design/design-md/classting/DESIGN.md +0 -292
- package/.opencode/oh-my-design/design-md/classum/DESIGN.md +0 -279
- package/.opencode/oh-my-design/design-md/classum/assets/_reference/.live-inspect-proof.json +0 -72
- package/.opencode/oh-my-design/design-md/classum/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/design-md/classum/assets/_reference/structure.json +0 -21
- package/.opencode/oh-my-design/design-md/classum/assets/_reference/tokens.json +0 -56
- package/.opencode/oh-my-design/design-md/claude/.verification.md +0 -106
- package/.opencode/oh-my-design/design-md/claude/DESIGN.md +0 -561
- package/.opencode/oh-my-design/design-md/claude/README.md +0 -24
- package/.opencode/oh-my-design/design-md/claude/preview-dark.html +0 -803
- package/.opencode/oh-my-design/design-md/claude/preview.html +0 -826
- package/.opencode/oh-my-design/design-md/clay/.verification.md +0 -129
- package/.opencode/oh-my-design/design-md/clay/DESIGN.md +0 -454
- package/.opencode/oh-my-design/design-md/clay/README.md +0 -23
- package/.opencode/oh-my-design/design-md/clay/preview-dark.html +0 -316
- package/.opencode/oh-my-design/design-md/clay/preview.html +0 -315
- package/.opencode/oh-my-design/design-md/clickhouse/.verification.md +0 -132
- package/.opencode/oh-my-design/design-md/clickhouse/DESIGN.md +0 -424
- package/.opencode/oh-my-design/design-md/clickhouse/README.md +0 -24
- package/.opencode/oh-my-design/design-md/clickhouse/preview-dark.html +0 -834
- package/.opencode/oh-my-design/design-md/clickhouse/preview.html +0 -786
- package/.opencode/oh-my-design/design-md/cloudflare/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/cloudflare/DESIGN.md +0 -637
- package/.opencode/oh-my-design/design-md/cohere/.verification.md +0 -136
- package/.opencode/oh-my-design/design-md/cohere/DESIGN.md +0 -409
- package/.opencode/oh-my-design/design-md/cohere/README.md +0 -24
- package/.opencode/oh-my-design/design-md/cohere/preview-dark.html +0 -803
- package/.opencode/oh-my-design/design-md/cohere/preview.html +0 -807
- package/.opencode/oh-my-design/design-md/coinbase/.verification.md +0 -116
- package/.opencode/oh-my-design/design-md/coinbase/DESIGN.md +0 -353
- package/.opencode/oh-my-design/design-md/coinbase/README.md +0 -23
- package/.opencode/oh-my-design/design-md/coinbase/preview-dark.html +0 -164
- package/.opencode/oh-my-design/design-md/coinbase/preview.html +0 -163
- package/.opencode/oh-my-design/design-md/coinone/.verification.md +0 -38
- package/.opencode/oh-my-design/design-md/coinone/DESIGN.md +0 -257
- package/.opencode/oh-my-design/design-md/composio/.verification.md +0 -143
- package/.opencode/oh-my-design/design-md/composio/DESIGN.md +0 -441
- package/.opencode/oh-my-design/design-md/composio/README.md +0 -24
- package/.opencode/oh-my-design/design-md/composio/preview-dark.html +0 -958
- package/.opencode/oh-my-design/design-md/composio/preview.html +0 -933
- package/.opencode/oh-my-design/design-md/cookpad/DESIGN.md +0 -394
- package/.opencode/oh-my-design/design-md/coupang/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/coupang/DESIGN.md +0 -557
- package/.opencode/oh-my-design/design-md/cursor/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/cursor/DESIGN.md +0 -460
- package/.opencode/oh-my-design/design-md/cursor/README.md +0 -24
- package/.opencode/oh-my-design/design-md/cursor/preview-dark.html +0 -393
- package/.opencode/oh-my-design/design-md/cursor/preview.html +0 -383
- package/.opencode/oh-my-design/design-md/dabang/DESIGN.md +0 -267
- package/.opencode/oh-my-design/design-md/dabang/assets/_reference/.live-inspect-proof.json +0 -145
- package/.opencode/oh-my-design/design-md/dabang/assets/_reference/fonts.json +0 -22
- package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture-map.json +0 -718
- package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture.json +0 -1125
- package/.opencode/oh-my-design/design-md/dabang/assets/_reference/structure.json +0 -53
- package/.opencode/oh-my-design/design-md/dabang/assets/_reference/tokens.json +0 -130
- package/.opencode/oh-my-design/design-md/danawa/.verification.md +0 -60
- package/.opencode/oh-my-design/design-md/danawa/DESIGN.md +0 -477
- package/.opencode/oh-my-design/design-md/dcard/.verification.md +0 -118
- package/.opencode/oh-my-design/design-md/dcard/DESIGN.md +0 -633
- package/.opencode/oh-my-design/design-md/dcard/README.md +0 -12
- package/.opencode/oh-my-design/design-md/dcard/_research/forum-1440px.png +0 -0
- package/.opencode/oh-my-design/design-md/dcard/_research.md +0 -133
- package/.opencode/oh-my-design/design-md/dell/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/dell/DESIGN.md +0 -636
- package/.opencode/oh-my-design/design-md/devsisters/.verification.md +0 -32
- package/.opencode/oh-my-design/design-md/devsisters/DESIGN.md +0 -282
- package/.opencode/oh-my-design/design-md/discord/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/discord/DESIGN.md +0 -604
- package/.opencode/oh-my-design/design-md/dji/DESIGN.md +0 -454
- package/.opencode/oh-my-design/design-md/drnow/.verification.md +0 -41
- package/.opencode/oh-my-design/design-md/drnow/DESIGN.md +0 -383
- package/.opencode/oh-my-design/design-md/dropbox/.verification.md +0 -61
- package/.opencode/oh-my-design/design-md/dropbox/DESIGN.md +0 -445
- package/.opencode/oh-my-design/design-md/duolingo/.verification.md +0 -20
- package/.opencode/oh-my-design/design-md/duolingo/DESIGN.md +0 -563
- package/.opencode/oh-my-design/design-md/elevenlabs/.verification.md +0 -128
- package/.opencode/oh-my-design/design-md/elevenlabs/DESIGN.md +0 -415
- package/.opencode/oh-my-design/design-md/elevenlabs/README.md +0 -23
- package/.opencode/oh-my-design/design-md/elevenlabs/preview-dark.html +0 -252
- package/.opencode/oh-my-design/design-md/elevenlabs/preview.html +0 -251
- package/.opencode/oh-my-design/design-md/expo/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/expo/DESIGN.md +0 -412
- package/.opencode/oh-my-design/design-md/expo/README.md +0 -24
- package/.opencode/oh-my-design/design-md/expo/preview-dark.html +0 -533
- package/.opencode/oh-my-design/design-md/expo/preview.html +0 -533
- package/.opencode/oh-my-design/design-md/fastcampus/DESIGN.md +0 -529
- package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/.live-inspect-proof.json +0 -950
- package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/fonts.json +0 -14
- package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/structure.json +0 -30
- package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/tokens.json +0 -109
- package/.opencode/oh-my-design/design-md/ferrari/.verification.md +0 -119
- package/.opencode/oh-my-design/design-md/ferrari/DESIGN.md +0 -447
- package/.opencode/oh-my-design/design-md/ferrari/README.md +0 -23
- package/.opencode/oh-my-design/design-md/ferrari/preview-dark.html +0 -1162
- package/.opencode/oh-my-design/design-md/ferrari/preview.html +0 -1122
- package/.opencode/oh-my-design/design-md/figma/.verification.md +0 -206
- package/.opencode/oh-my-design/design-md/figma/DESIGN.md +0 -534
- package/.opencode/oh-my-design/design-md/figma/README.md +0 -24
- package/.opencode/oh-my-design/design-md/figma/preview-dark.html +0 -822
- package/.opencode/oh-my-design/design-md/figma/preview.html +0 -832
- package/.opencode/oh-my-design/design-md/finda/.verification.md +0 -33
- package/.opencode/oh-my-design/design-md/finda/DESIGN.md +0 -413
- package/.opencode/oh-my-design/design-md/firstory/.verification.md +0 -70
- package/.opencode/oh-my-design/design-md/firstory/DESIGN.md +0 -487
- package/.opencode/oh-my-design/design-md/flex/DESIGN.md +0 -356
- package/.opencode/oh-my-design/design-md/flex/_research.md +0 -49
- package/.opencode/oh-my-design/design-md/flex/assets/_reference/.live-inspect-proof.json +0 -192
- package/.opencode/oh-my-design/design-md/flex/assets/_reference/.raw-inspect.json +0 -873
- package/.opencode/oh-my-design/design-md/flex/assets/_reference/fonts.json +0 -17
- package/.opencode/oh-my-design/design-md/flex/assets/_reference/structure.json +0 -58
- package/.opencode/oh-my-design/design-md/flex/assets/_reference/tokens.json +0 -75
- package/.opencode/oh-my-design/design-md/flo/.verification.md +0 -33
- package/.opencode/oh-my-design/design-md/flo/DESIGN.md +0 -349
- package/.opencode/oh-my-design/design-md/framer/.verification.md +0 -147
- package/.opencode/oh-my-design/design-md/framer/DESIGN.md +0 -431
- package/.opencode/oh-my-design/design-md/framer/README.md +0 -23
- package/.opencode/oh-my-design/design-md/framer/preview-dark.html +0 -902
- package/.opencode/oh-my-design/design-md/framer/preview.html +0 -883
- package/.opencode/oh-my-design/design-md/freee/.verification.md +0 -145
- package/.opencode/oh-my-design/design-md/freee/DESIGN.md +0 -620
- package/.opencode/oh-my-design/design-md/freee/README.md +0 -12
- package/.opencode/oh-my-design/design-md/freee/_research/vibes-storybook-1440px.png +0 -0
- package/.opencode/oh-my-design/design-md/freee/_research.md +0 -116
- package/.opencode/oh-my-design/design-md/fugle/.verification.md +0 -40
- package/.opencode/oh-my-design/design-md/fugle/DESIGN.md +0 -290
- package/.opencode/oh-my-design/design-md/funnow/.verification.md +0 -62
- package/.opencode/oh-my-design/design-md/funnow/DESIGN.md +0 -431
- package/.opencode/oh-my-design/design-md/gangnamunni/DESIGN.md +0 -677
- package/.opencode/oh-my-design/design-md/gangnamunni/_promo.json +0 -26
- package/.opencode/oh-my-design/design-md/gangnamunni/_research.md +0 -113
- package/.opencode/oh-my-design/design-md/genie/.verification.md +0 -29
- package/.opencode/oh-my-design/design-md/genie/DESIGN.md +0 -415
- package/.opencode/oh-my-design/design-md/github/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/github/DESIGN.md +0 -727
- package/.opencode/oh-my-design/design-md/gmarket/DESIGN.md +0 -534
- package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/.live-inspect-proof.json +0 -217
- package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/fonts.json +0 -41
- package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-bestsellers.json +0 -1929
- package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-home.json +0 -3675
- package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/structure.json +0 -65
- package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/tokens.json +0 -210
- package/.opencode/oh-my-design/design-md/gogolook/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/gogolook/DESIGN.md +0 -155
- package/.opencode/oh-my-design/design-md/gogoro/DESIGN.md +0 -441
- package/.opencode/oh-my-design/design-md/google/.verification.md +0 -61
- package/.opencode/oh-my-design/design-md/google/DESIGN.md +0 -499
- package/.opencode/oh-my-design/design-md/greenvines/.verification.md +0 -72
- package/.opencode/oh-my-design/design-md/greenvines/DESIGN.md +0 -454
- package/.opencode/oh-my-design/design-md/greeting/.verification.md +0 -64
- package/.opencode/oh-my-design/design-md/greeting/DESIGN.md +0 -462
- package/.opencode/oh-my-design/design-md/grip/.verification.md +0 -36
- package/.opencode/oh-my-design/design-md/grip/DESIGN.md +0 -289
- package/.opencode/oh-my-design/design-md/hahow/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/hahow/DESIGN.md +0 -184
- package/.opencode/oh-my-design/design-md/hashicorp/.verification.md +0 -142
- package/.opencode/oh-my-design/design-md/hashicorp/DESIGN.md +0 -411
- package/.opencode/oh-my-design/design-md/hashicorp/README.md +0 -24
- package/.opencode/oh-my-design/design-md/hashicorp/preview-dark.html +0 -1202
- package/.opencode/oh-my-design/design-md/hashicorp/preview.html +0 -1193
- package/.opencode/oh-my-design/design-md/hogangnono/.verification.md +0 -33
- package/.opencode/oh-my-design/design-md/hogangnono/DESIGN.md +0 -349
- package/.opencode/oh-my-design/design-md/hp/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/hp/DESIGN.md +0 -563
- package/.opencode/oh-my-design/design-md/hyperconnect/.verification.md +0 -40
- package/.opencode/oh-my-design/design-md/hyperconnect/DESIGN.md +0 -393
- package/.opencode/oh-my-design/design-md/hyundaicard/.verification.md +0 -25
- package/.opencode/oh-my-design/design-md/hyundaicard/DESIGN.md +0 -201
- package/.opencode/oh-my-design/design-md/ibm/.verification.md +0 -102
- package/.opencode/oh-my-design/design-md/ibm/DESIGN.md +0 -464
- package/.opencode/oh-my-design/design-md/ibm/README.md +0 -24
- package/.opencode/oh-my-design/design-md/ibm/preview-dark.html +0 -443
- package/.opencode/oh-my-design/design-md/ibm/preview.html +0 -428
- package/.opencode/oh-my-design/design-md/ichef/DESIGN.md +0 -455
- package/.opencode/oh-my-design/design-md/ikala/.verification.md +0 -35
- package/.opencode/oh-my-design/design-md/ikala/DESIGN.md +0 -400
- package/.opencode/oh-my-design/design-md/imweb/.verification.md +0 -61
- package/.opencode/oh-my-design/design-md/imweb/DESIGN.md +0 -460
- package/.opencode/oh-my-design/design-md/inflearn/DESIGN.md +0 -453
- package/.opencode/oh-my-design/design-md/inflearn/_promo.json +0 -29
- package/.opencode/oh-my-design/design-md/inflearn/_research.md +0 -85
- package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof-courses.json +0 -679
- package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof.json +0 -448
- package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/fonts.json +0 -41
- package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/structure.json +0 -110
- package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/tokens.json +0 -54
- package/.opencode/oh-my-design/design-md/intercom/.verification.md +0 -144
- package/.opencode/oh-my-design/design-md/intercom/DESIGN.md +0 -271
- package/.opencode/oh-my-design/design-md/intercom/README.md +0 -23
- package/.opencode/oh-my-design/design-md/intercom/preview-dark.html +0 -185
- package/.opencode/oh-my-design/design-md/intercom/preview.html +0 -184
- package/.opencode/oh-my-design/design-md/jandi/.verification.md +0 -26
- package/.opencode/oh-my-design/design-md/jandi/DESIGN.md +0 -382
- package/.opencode/oh-my-design/design-md/jkopay/.verification.md +0 -32
- package/.opencode/oh-my-design/design-md/jkopay/DESIGN.md +0 -283
- package/.opencode/oh-my-design/design-md/jobkorea/.verification.md +0 -30
- package/.opencode/oh-my-design/design-md/jobkorea/DESIGN.md +0 -349
- package/.opencode/oh-my-design/design-md/jumpit/DESIGN.md +0 -403
- package/.opencode/oh-my-design/design-md/jumpit/_research.md +0 -119
- package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/.live-inspect-proof.json +0 -182
- package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/structure.json +0 -66
- package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/tokens.json +0 -108
- package/.opencode/oh-my-design/design-md/kakao/.verification.md +0 -137
- package/.opencode/oh-my-design/design-md/kakao/DESIGN.md +0 -568
- package/.opencode/oh-my-design/design-md/kakao/README.md +0 -18
- package/.opencode/oh-my-design/design-md/kakao/_research.md +0 -98
- package/.opencode/oh-my-design/design-md/kakaobank/.verification.md +0 -133
- package/.opencode/oh-my-design/design-md/kakaobank/DESIGN.md +0 -602
- package/.opencode/oh-my-design/design-md/kakaopay/DESIGN.md +0 -603
- package/.opencode/oh-my-design/design-md/kakaopay/_promo.json +0 -22
- package/.opencode/oh-my-design/design-md/kakaopay/_research.md +0 -84
- package/.opencode/oh-my-design/design-md/kakaot/DESIGN.md +0 -507
- package/.opencode/oh-my-design/design-md/karrot/.verification.md +0 -143
- package/.opencode/oh-my-design/design-md/karrot/DESIGN.md +0 -494
- package/.opencode/oh-my-design/design-md/karrot/README.md +0 -18
- package/.opencode/oh-my-design/design-md/karrot/_research.md +0 -57
- package/.opencode/oh-my-design/design-md/kbank/DESIGN.md +0 -252
- package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-proof.json +0 -215
- package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-raw.json +0 -1
- package/.opencode/oh-my-design/design-md/kbank/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/design-md/kbank/assets/_reference/structure.json +0 -151
- package/.opencode/oh-my-design/design-md/kbank/assets/_reference/tokens.json +0 -101
- package/.opencode/oh-my-design/design-md/kdan/.verification.md +0 -30
- package/.opencode/oh-my-design/design-md/kdan/DESIGN.md +0 -193
- package/.opencode/oh-my-design/design-md/kintone/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/kintone/DESIGN.md +0 -586
- package/.opencode/oh-my-design/design-md/kkbox/.verification.md +0 -27
- package/.opencode/oh-my-design/design-md/kkbox/DESIGN.md +0 -136
- package/.opencode/oh-my-design/design-md/kkday/DESIGN.md +0 -470
- package/.opencode/oh-my-design/design-md/kmong/.verification.md +0 -30
- package/.opencode/oh-my-design/design-md/kmong/DESIGN.md +0 -427
- package/.opencode/oh-my-design/design-md/krafton/.verification.md +0 -38
- package/.opencode/oh-my-design/design-md/krafton/DESIGN.md +0 -267
- package/.opencode/oh-my-design/design-md/kraken/.verification.md +0 -143
- package/.opencode/oh-my-design/design-md/kraken/DESIGN.md +0 -277
- package/.opencode/oh-my-design/design-md/kraken/README.md +0 -23
- package/.opencode/oh-my-design/design-md/kraken/preview-dark.html +0 -169
- package/.opencode/oh-my-design/design-md/kraken/preview.html +0 -168
- package/.opencode/oh-my-design/design-md/krds/.verification.md +0 -373
- package/.opencode/oh-my-design/design-md/krds/DESIGN.md +0 -1060
- package/.opencode/oh-my-design/design-md/kream/DESIGN.md +0 -432
- package/.opencode/oh-my-design/design-md/kream/assets/_reference/.live-inspect-proof.json +0 -289
- package/.opencode/oh-my-design/design-md/kream/assets/_reference/fonts.json +0 -26
- package/.opencode/oh-my-design/design-md/kream/assets/_reference/structure.json +0 -56
- package/.opencode/oh-my-design/design-md/kream/assets/_reference/tokens.json +0 -154
- package/.opencode/oh-my-design/design-md/kurly/.verification.md +0 -126
- package/.opencode/oh-my-design/design-md/kurly/DESIGN.md +0 -620
- package/.opencode/oh-my-design/design-md/laftel/.verification.md +0 -39
- package/.opencode/oh-my-design/design-md/laftel/DESIGN.md +0 -293
- package/.opencode/oh-my-design/design-md/lamborghini/.verification.md +0 -127
- package/.opencode/oh-my-design/design-md/lamborghini/DESIGN.md +0 -430
- package/.opencode/oh-my-design/design-md/lamborghini/README.md +0 -23
- package/.opencode/oh-my-design/design-md/lamborghini/preview-dark.html +0 -303
- package/.opencode/oh-my-design/design-md/lamborghini/preview.html +0 -381
- package/.opencode/oh-my-design/design-md/laundrygo/.verification.md +0 -60
- package/.opencode/oh-my-design/design-md/laundrygo/DESIGN.md +0 -434
- package/.opencode/oh-my-design/design-md/layerx/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/layerx/DESIGN.md +0 -615
- package/.opencode/oh-my-design/design-md/lezhin/.verification.md +0 -47
- package/.opencode/oh-my-design/design-md/lezhin/DESIGN.md +0 -348
- package/.opencode/oh-my-design/design-md/line/.verification.md +0 -137
- package/.opencode/oh-my-design/design-md/line/DESIGN.md +0 -467
- package/.opencode/oh-my-design/design-md/line/README.md +0 -12
- package/.opencode/oh-my-design/design-md/line/_research/home-1440px.png +0 -0
- package/.opencode/oh-my-design/design-md/line/_research.md +0 -65
- package/.opencode/oh-my-design/design-md/linear.app/.verification.md +0 -143
- package/.opencode/oh-my-design/design-md/linear.app/DESIGN.md +0 -642
- package/.opencode/oh-my-design/design-md/linear.app/README.md +0 -24
- package/.opencode/oh-my-design/design-md/linear.app/preview-dark.html +0 -383
- package/.opencode/oh-my-design/design-md/linear.app/preview.html +0 -373
- package/.opencode/oh-my-design/design-md/loom/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/loom/DESIGN.md +0 -396
- package/.opencode/oh-my-design/design-md/lovable/.verification.md +0 -154
- package/.opencode/oh-my-design/design-md/lovable/DESIGN.md +0 -423
- package/.opencode/oh-my-design/design-md/lovable/README.md +0 -24
- package/.opencode/oh-my-design/design-md/lovable/preview-dark.html +0 -349
- package/.opencode/oh-my-design/design-md/lovable/preview.html +0 -348
- package/.opencode/oh-my-design/design-md/lunit/DESIGN.md +0 -296
- package/.opencode/oh-my-design/design-md/lunit/assets/_reference/.live-inspect-proof.json +0 -249
- package/.opencode/oh-my-design/design-md/lunit/assets/_reference/fonts.json +0 -24
- package/.opencode/oh-my-design/design-md/lunit/assets/_reference/structure.json +0 -162
- package/.opencode/oh-my-design/design-md/lunit/assets/_reference/tokens.json +0 -115
- package/.opencode/oh-my-design/design-md/mastercard/.verification.md +0 -19
- package/.opencode/oh-my-design/design-md/mastercard/DESIGN.md +0 -587
- package/.opencode/oh-my-design/design-md/meituan/DESIGN.md +0 -466
- package/.opencode/oh-my-design/design-md/melon/.verification.md +0 -27
- package/.opencode/oh-my-design/design-md/melon/DESIGN.md +0 -179
- package/.opencode/oh-my-design/design-md/mercari/.verification.md +0 -155
- package/.opencode/oh-my-design/design-md/mercari/DESIGN.md +0 -514
- package/.opencode/oh-my-design/design-md/mercari/README.md +0 -12
- package/.opencode/oh-my-design/design-md/mercari/_research/home-1440px.png +0 -0
- package/.opencode/oh-my-design/design-md/mercari/_research.md +0 -137
- package/.opencode/oh-my-design/design-md/mercury/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/mercury/DESIGN.md +0 -589
- package/.opencode/oh-my-design/design-md/meta/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/meta/DESIGN.md +0 -615
- package/.opencode/oh-my-design/design-md/microsoft/.verification.md +0 -62
- package/.opencode/oh-my-design/design-md/microsoft/DESIGN.md +0 -508
- package/.opencode/oh-my-design/design-md/millie/DESIGN.md +0 -584
- package/.opencode/oh-my-design/design-md/minimax/.verification.md +0 -135
- package/.opencode/oh-my-design/design-md/minimax/DESIGN.md +0 -396
- package/.opencode/oh-my-design/design-md/minimax/README.md +0 -24
- package/.opencode/oh-my-design/design-md/minimax/preview-dark.html +0 -1262
- package/.opencode/oh-my-design/design-md/minimax/preview.html +0 -1248
- package/.opencode/oh-my-design/design-md/mintlify/.verification.md +0 -160
- package/.opencode/oh-my-design/design-md/mintlify/DESIGN.md +0 -472
- package/.opencode/oh-my-design/design-md/mintlify/README.md +0 -24
- package/.opencode/oh-my-design/design-md/mintlify/preview-dark.html +0 -409
- package/.opencode/oh-my-design/design-md/mintlify/preview.html +0 -398
- package/.opencode/oh-my-design/design-md/miricanvas/.verification.md +0 -61
- package/.opencode/oh-my-design/design-md/miricanvas/DESIGN.md +0 -464
- package/.opencode/oh-my-design/design-md/miro/.verification.md +0 -138
- package/.opencode/oh-my-design/design-md/miro/DESIGN.md +0 -319
- package/.opencode/oh-my-design/design-md/miro/README.md +0 -23
- package/.opencode/oh-my-design/design-md/miro/preview-dark.html +0 -174
- package/.opencode/oh-my-design/design-md/miro/preview.html +0 -173
- package/.opencode/oh-my-design/design-md/mistral.ai/.verification.md +0 -146
- package/.opencode/oh-my-design/design-md/mistral.ai/DESIGN.md +0 -390
- package/.opencode/oh-my-design/design-md/mistral.ai/README.md +0 -24
- package/.opencode/oh-my-design/design-md/mistral.ai/preview-dark.html +0 -806
- package/.opencode/oh-my-design/design-md/mistral.ai/preview.html +0 -805
- package/.opencode/oh-my-design/design-md/modusign/.verification.md +0 -58
- package/.opencode/oh-my-design/design-md/modusign/DESIGN.md +0 -524
- package/.opencode/oh-my-design/design-md/momoshop/.verification.md +0 -36
- package/.opencode/oh-my-design/design-md/momoshop/DESIGN.md +0 -322
- package/.opencode/oh-my-design/design-md/money-forward/DESIGN.md +0 -443
- package/.opencode/oh-my-design/design-md/mongodb/.verification.md +0 -145
- package/.opencode/oh-my-design/design-md/mongodb/DESIGN.md +0 -401
- package/.opencode/oh-my-design/design-md/mongodb/README.md +0 -23
- package/.opencode/oh-my-design/design-md/mongodb/preview-dark.html +0 -260
- package/.opencode/oh-my-design/design-md/mongodb/preview.html +0 -259
- package/.opencode/oh-my-design/design-md/muji/.verification.md +0 -20
- package/.opencode/oh-my-design/design-md/muji/DESIGN.md +0 -605
- package/.opencode/oh-my-design/design-md/musinsa/.verification.md +0 -59
- package/.opencode/oh-my-design/design-md/musinsa/DESIGN.md +0 -593
- package/.opencode/oh-my-design/design-md/mustit/.verification.md +0 -37
- package/.opencode/oh-my-design/design-md/mustit/DESIGN.md +0 -328
- package/.opencode/oh-my-design/design-md/myrealtrip/DESIGN.md +0 -494
- package/.opencode/oh-my-design/design-md/naver/.verification.md +0 -134
- package/.opencode/oh-my-design/design-md/naver/DESIGN.md +0 -582
- package/.opencode/oh-my-design/design-md/naverwebtoon/DESIGN.md +0 -477
- package/.opencode/oh-my-design/design-md/netflix/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/netflix/DESIGN.md +0 -572
- package/.opencode/oh-my-design/design-md/nexon/.verification.md +0 -27
- package/.opencode/oh-my-design/design-md/nexon/DESIGN.md +0 -389
- package/.opencode/oh-my-design/design-md/nhncloud/.verification.md +0 -23
- package/.opencode/oh-my-design/design-md/nhncloud/DESIGN.md +0 -207
- package/.opencode/oh-my-design/design-md/nike/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/nike/DESIGN.md +0 -588
- package/.opencode/oh-my-design/design-md/note/DESIGN.md +0 -346
- package/.opencode/oh-my-design/design-md/notion/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/notion/DESIGN.md +0 -557
- package/.opencode/oh-my-design/design-md/notion/README.md +0 -24
- package/.opencode/oh-my-design/design-md/notion/preview-dark.html +0 -372
- package/.opencode/oh-my-design/design-md/notion/preview.html +0 -364
- package/.opencode/oh-my-design/design-md/nvidia/.verification.md +0 -127
- package/.opencode/oh-my-design/design-md/nvidia/DESIGN.md +0 -550
- package/.opencode/oh-my-design/design-md/nvidia/README.md +0 -24
- package/.opencode/oh-my-design/design-md/nvidia/_research.md +0 -68
- package/.opencode/oh-my-design/design-md/nvidia/preview-dark.html +0 -374
- package/.opencode/oh-my-design/design-md/nvidia/preview.html +0 -366
- package/.opencode/oh-my-design/design-md/ohouse/.verification.md +0 -87
- package/.opencode/oh-my-design/design-md/ohouse/DESIGN.md +0 -635
- package/.opencode/oh-my-design/design-md/oliveyoung/DESIGN.md +0 -407
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/.live-inspect-proof.json +0 -158
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_best_capture.json +0 -644
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_detail_capture.json +0 -447
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main.html +0 -419
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main_capture.json +0 -1126
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_search_capture.json +0 -912
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/fonts.json +0 -20
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/structure.json +0 -91
- package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/tokens.json +0 -79
- package/.opencode/oh-my-design/design-md/ollama/.verification.md +0 -138
- package/.opencode/oh-my-design/design-md/ollama/DESIGN.md +0 -393
- package/.opencode/oh-my-design/design-md/ollama/README.md +0 -24
- package/.opencode/oh-my-design/design-md/ollama/preview-dark.html +0 -678
- package/.opencode/oh-my-design/design-md/ollama/preview.html +0 -678
- package/.opencode/oh-my-design/design-md/omnichat/.verification.md +0 -74
- package/.opencode/oh-my-design/design-md/omnichat/DESIGN.md +0 -499
- package/.opencode/oh-my-design/design-md/openai/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/openai/DESIGN.md +0 -641
- package/.opencode/oh-my-design/design-md/opencode.ai/.verification.md +0 -136
- package/.opencode/oh-my-design/design-md/opencode.ai/DESIGN.md +0 -425
- package/.opencode/oh-my-design/design-md/opencode.ai/README.md +0 -24
- package/.opencode/oh-my-design/design-md/opencode.ai/preview-dark.html +0 -366
- package/.opencode/oh-my-design/design-md/opencode.ai/preview.html +0 -357
- package/.opencode/oh-my-design/design-md/payco/.verification.md +0 -28
- package/.opencode/oh-my-design/design-md/payco/DESIGN.md +0 -267
- package/.opencode/oh-my-design/design-md/paypay/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/paypay/DESIGN.md +0 -656
- package/.opencode/oh-my-design/design-md/pchome/.verification.md +0 -38
- package/.opencode/oh-my-design/design-md/pchome/DESIGN.md +0 -439
- package/.opencode/oh-my-design/design-md/perplexity/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/perplexity/DESIGN.md +0 -546
- package/.opencode/oh-my-design/design-md/piccollage/.verification.md +0 -34
- package/.opencode/oh-my-design/design-md/piccollage/DESIGN.md +0 -320
- package/.opencode/oh-my-design/design-md/pinkoi/.verification.md +0 -147
- package/.opencode/oh-my-design/design-md/pinkoi/DESIGN.md +0 -639
- package/.opencode/oh-my-design/design-md/pinkoi/README.md +0 -12
- package/.opencode/oh-my-design/design-md/pinkoi/_research/browse-1440px.png +0 -0
- package/.opencode/oh-my-design/design-md/pinkoi/_research.md +0 -167
- package/.opencode/oh-my-design/design-md/pinterest/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/pinterest/DESIGN.md +0 -366
- package/.opencode/oh-my-design/design-md/pinterest/README.md +0 -23
- package/.opencode/oh-my-design/design-md/pinterest/preview-dark.html +0 -233
- package/.opencode/oh-my-design/design-md/pinterest/preview.html +0 -232
- package/.opencode/oh-my-design/design-md/pixiv/.verification.md +0 -20
- package/.opencode/oh-my-design/design-md/pixiv/DESIGN.md +0 -613
- package/.opencode/oh-my-design/design-md/pixnet/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/pixnet/DESIGN.md +0 -430
- package/.opencode/oh-my-design/design-md/posthog/.verification.md +0 -159
- package/.opencode/oh-my-design/design-md/posthog/DESIGN.md +0 -480
- package/.opencode/oh-my-design/design-md/posthog/README.md +0 -23
- package/.opencode/oh-my-design/design-md/posthog/preview-dark.html +0 -699
- package/.opencode/oh-my-design/design-md/posthog/preview.html +0 -749
- package/.opencode/oh-my-design/design-md/postype/.verification.md +0 -61
- package/.opencode/oh-my-design/design-md/postype/DESIGN.md +0 -431
- package/.opencode/oh-my-design/design-md/publy/DESIGN.md +0 -563
- package/.opencode/oh-my-design/design-md/qanda/.verification.md +0 -121
- package/.opencode/oh-my-design/design-md/qanda/DESIGN.md +0 -516
- package/.opencode/oh-my-design/design-md/ragic/.verification.md +0 -37
- package/.opencode/oh-my-design/design-md/ragic/DESIGN.md +0 -444
- package/.opencode/oh-my-design/design-md/rakuten/.verification.md +0 -60
- package/.opencode/oh-my-design/design-md/rakuten/DESIGN.md +0 -440
- package/.opencode/oh-my-design/design-md/ramp/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/ramp/DESIGN.md +0 -634
- package/.opencode/oh-my-design/design-md/rayark/.verification.md +0 -22
- package/.opencode/oh-my-design/design-md/rayark/DESIGN.md +0 -154
- package/.opencode/oh-my-design/design-md/raycast/.verification.md +0 -138
- package/.opencode/oh-my-design/design-md/raycast/DESIGN.md +0 -467
- package/.opencode/oh-my-design/design-md/raycast/README.md +0 -23
- package/.opencode/oh-my-design/design-md/raycast/preview-dark.html +0 -606
- package/.opencode/oh-my-design/design-md/raycast/preview.html +0 -688
- package/.opencode/oh-my-design/design-md/remember/.verification.md +0 -135
- package/.opencode/oh-my-design/design-md/remember/DESIGN.md +0 -504
- package/.opencode/oh-my-design/design-md/remember/_promo.json +0 -27
- package/.opencode/oh-my-design/design-md/remember/_research.md +0 -90
- package/.opencode/oh-my-design/design-md/renault/.verification.md +0 -139
- package/.opencode/oh-my-design/design-md/renault/DESIGN.md +0 -439
- package/.opencode/oh-my-design/design-md/renault/README.md +0 -23
- package/.opencode/oh-my-design/design-md/renault/preview-dark.html +0 -406
- package/.opencode/oh-my-design/design-md/renault/preview.html +0 -606
- package/.opencode/oh-my-design/design-md/replicate/.verification.md +0 -154
- package/.opencode/oh-my-design/design-md/replicate/DESIGN.md +0 -387
- package/.opencode/oh-my-design/design-md/replicate/README.md +0 -24
- package/.opencode/oh-my-design/design-md/replicate/preview-dark.html +0 -828
- package/.opencode/oh-my-design/design-md/replicate/preview.html +0 -831
- package/.opencode/oh-my-design/design-md/resend/.verification.md +0 -143
- package/.opencode/oh-my-design/design-md/resend/DESIGN.md +0 -440
- package/.opencode/oh-my-design/design-md/resend/README.md +0 -23
- package/.opencode/oh-my-design/design-md/resend/preview-dark.html +0 -355
- package/.opencode/oh-my-design/design-md/resend/preview.html +0 -354
- package/.opencode/oh-my-design/design-md/retool/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/retool/DESIGN.md +0 -645
- package/.opencode/oh-my-design/design-md/revolut/.verification.md +0 -140
- package/.opencode/oh-my-design/design-md/revolut/DESIGN.md +0 -319
- package/.opencode/oh-my-design/design-md/revolut/README.md +0 -23
- package/.opencode/oh-my-design/design-md/revolut/preview-dark.html +0 -234
- package/.opencode/oh-my-design/design-md/revolut/preview.html +0 -233
- package/.opencode/oh-my-design/design-md/richart/.verification.md +0 -41
- package/.opencode/oh-my-design/design-md/richart/DESIGN.md +0 -465
- package/.opencode/oh-my-design/design-md/ridi/.verification.md +0 -108
- package/.opencode/oh-my-design/design-md/ridi/DESIGN.md +0 -573
- package/.opencode/oh-my-design/design-md/riiid/.verification.md +0 -33
- package/.opencode/oh-my-design/design-md/riiid/DESIGN.md +0 -260
- package/.opencode/oh-my-design/design-md/ringle/.verification.md +0 -53
- package/.opencode/oh-my-design/design-md/ringle/DESIGN.md +0 -444
- package/.opencode/oh-my-design/design-md/robinhood/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/robinhood/DESIGN.md +0 -604
- package/.opencode/oh-my-design/design-md/runwayml/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/runwayml/DESIGN.md +0 -431
- package/.opencode/oh-my-design/design-md/runwayml/README.md +0 -24
- package/.opencode/oh-my-design/design-md/runwayml/preview-dark.html +0 -664
- package/.opencode/oh-my-design/design-md/runwayml/preview.html +0 -665
- package/.opencode/oh-my-design/design-md/salesforce/.verification.md +0 -66
- package/.opencode/oh-my-design/design-md/salesforce/DESIGN.md +0 -473
- package/.opencode/oh-my-design/design-md/sanity/.verification.md +0 -174
- package/.opencode/oh-my-design/design-md/sanity/DESIGN.md +0 -499
- package/.opencode/oh-my-design/design-md/sanity/README.md +0 -24
- package/.opencode/oh-my-design/design-md/sanity/preview-dark.html +0 -990
- package/.opencode/oh-my-design/design-md/sanity/preview.html +0 -1135
- package/.opencode/oh-my-design/design-md/sansan/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/sansan/DESIGN.md +0 -631
- package/.opencode/oh-my-design/design-md/sendbird/.verification.md +0 -67
- package/.opencode/oh-my-design/design-md/sendbird/DESIGN.md +0 -331
- package/.opencode/oh-my-design/design-md/sentry/.verification.md +0 -157
- package/.opencode/oh-my-design/design-md/sentry/DESIGN.md +0 -397
- package/.opencode/oh-my-design/design-md/sentry/README.md +0 -24
- package/.opencode/oh-my-design/design-md/sentry/preview-dark.html +0 -626
- package/.opencode/oh-my-design/design-md/sentry/preview.html +0 -951
- package/.opencode/oh-my-design/design-md/shinhancard/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/shinhancard/DESIGN.md +0 -421
- package/.opencode/oh-my-design/design-md/shopline/.verification.md +0 -34
- package/.opencode/oh-my-design/design-md/shopline/DESIGN.md +0 -431
- package/.opencode/oh-my-design/design-md/slack/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/slack/DESIGN.md +0 -635
- package/.opencode/oh-my-design/design-md/smarthr/DESIGN.md +0 -452
- package/.opencode/oh-my-design/design-md/smartnews/DESIGN.md +0 -360
- package/.opencode/oh-my-design/design-md/socar/DESIGN.md +0 -438
- package/.opencode/oh-my-design/design-md/socar/_promo.json +0 -28
- package/.opencode/oh-my-design/design-md/socar/_research.md +0 -55
- package/.opencode/oh-my-design/design-md/soomgo/.verification.md +0 -27
- package/.opencode/oh-my-design/design-md/soomgo/DESIGN.md +0 -326
- package/.opencode/oh-my-design/design-md/spacex/.verification.md +0 -132
- package/.opencode/oh-my-design/design-md/spacex/DESIGN.md +0 -415
- package/.opencode/oh-my-design/design-md/spacex/README.md +0 -23
- package/.opencode/oh-my-design/design-md/spacex/_research.md +0 -69
- package/.opencode/oh-my-design/design-md/spacex/preview-dark.html +0 -221
- package/.opencode/oh-my-design/design-md/spacex/preview.html +0 -220
- package/.opencode/oh-my-design/design-md/spoon/DESIGN.md +0 -492
- package/.opencode/oh-my-design/design-md/spotify/.verification.md +0 -128
- package/.opencode/oh-my-design/design-md/spotify/DESIGN.md +0 -489
- package/.opencode/oh-my-design/design-md/spotify/README.md +0 -23
- package/.opencode/oh-my-design/design-md/spotify/preview-dark.html +0 -231
- package/.opencode/oh-my-design/design-md/spotify/preview.html +0 -230
- package/.opencode/oh-my-design/design-md/starbucks/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/starbucks/DESIGN.md +0 -597
- package/.opencode/oh-my-design/design-md/stores/.verification.md +0 -61
- package/.opencode/oh-my-design/design-md/stores/DESIGN.md +0 -447
- package/.opencode/oh-my-design/design-md/stripe/.verification.md +0 -140
- package/.opencode/oh-my-design/design-md/stripe/DESIGN.md +0 -571
- package/.opencode/oh-my-design/design-md/stripe/README.md +0 -24
- package/.opencode/oh-my-design/design-md/stripe/preview-dark.html +0 -428
- package/.opencode/oh-my-design/design-md/stripe/preview.html +0 -419
- package/.opencode/oh-my-design/design-md/studio/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/studio/DESIGN.md +0 -602
- package/.opencode/oh-my-design/design-md/supabase/.verification.md +0 -145
- package/.opencode/oh-my-design/design-md/supabase/DESIGN.md +0 -389
- package/.opencode/oh-my-design/design-md/supabase/README.md +0 -24
- package/.opencode/oh-my-design/design-md/supabase/preview-dark.html +0 -977
- package/.opencode/oh-my-design/design-md/supabase/preview.html +0 -955
- package/.opencode/oh-my-design/design-md/superhuman/.verification.md +0 -184
- package/.opencode/oh-my-design/design-md/superhuman/DESIGN.md +0 -453
- package/.opencode/oh-my-design/design-md/superhuman/README.md +0 -23
- package/.opencode/oh-my-design/design-md/superhuman/preview-dark.html +0 -973
- package/.opencode/oh-my-design/design-md/superhuman/preview.html +0 -951
- package/.opencode/oh-my-design/design-md/surveycake/.verification.md +0 -31
- package/.opencode/oh-my-design/design-md/surveycake/DESIGN.md +0 -442
- package/.opencode/oh-my-design/design-md/tada/DESIGN.md +0 -579
- package/.opencode/oh-my-design/design-md/teamblind/.verification.md +0 -76
- package/.opencode/oh-my-design/design-md/teamblind/DESIGN.md +0 -497
- package/.opencode/oh-my-design/design-md/tesla/.verification.md +0 -149
- package/.opencode/oh-my-design/design-md/tesla/DESIGN.md +0 -501
- package/.opencode/oh-my-design/design-md/tesla/README.md +0 -23
- package/.opencode/oh-my-design/design-md/tesla/_research.md +0 -70
- package/.opencode/oh-my-design/design-md/tesla/preview-dark.html +0 -947
- package/.opencode/oh-my-design/design-md/tesla/preview.html +0 -925
- package/.opencode/oh-my-design/design-md/theverge/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/theverge/DESIGN.md +0 -500
- package/.opencode/oh-my-design/design-md/timee/.verification.md +0 -67
- package/.opencode/oh-my-design/design-md/timee/DESIGN.md +0 -444
- package/.opencode/oh-my-design/design-md/together.ai/.verification.md +0 -145
- package/.opencode/oh-my-design/design-md/together.ai/DESIGN.md +0 -389
- package/.opencode/oh-my-design/design-md/together.ai/README.md +0 -24
- package/.opencode/oh-my-design/design-md/together.ai/preview-dark.html +0 -892
- package/.opencode/oh-my-design/design-md/together.ai/preview.html +0 -897
- package/.opencode/oh-my-design/design-md/toss/.verification.md +0 -120
- package/.opencode/oh-my-design/design-md/toss/DESIGN.md +0 -698
- package/.opencode/oh-my-design/design-md/toss/README.md +0 -19
- package/.opencode/oh-my-design/design-md/toss-securities/DESIGN.md +0 -247
- package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-proof.json +0 -126
- package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-raw.json +0 -619
- package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-stock.json +0 -525
- package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/fonts.json +0 -24
- package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/structure.json +0 -35
- package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/tokens.json +0 -87
- package/.opencode/oh-my-design/design-md/tossbank/DESIGN.md +0 -576
- package/.opencode/oh-my-design/design-md/trenbe/.verification.md +0 -32
- package/.opencode/oh-my-design/design-md/trenbe/DESIGN.md +0 -293
- package/.opencode/oh-my-design/design-md/triple/DESIGN.md +0 -481
- package/.opencode/oh-my-design/design-md/tumblbug/DESIGN.md +0 -578
- package/.opencode/oh-my-design/design-md/tving/DESIGN.md +0 -317
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/.live-inspect-proof.json +0 -131
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/LICENSE-NOTE.md +0 -37
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/attribution.md +0 -52
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/fonts.json +0 -31
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/screenshots/hero-desktop.png +0 -0
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/structure.json +0 -55
- package/.opencode/oh-my-design/design-md/tving/assets/_reference/tokens.json +0 -115
- package/.opencode/oh-my-design/design-md/uber/.verification.md +0 -128
- package/.opencode/oh-my-design/design-md/uber/DESIGN.md +0 -423
- package/.opencode/oh-my-design/design-md/uber/README.md +0 -24
- package/.opencode/oh-my-design/design-md/uber/preview-dark.html +0 -1120
- package/.opencode/oh-my-design/design-md/uber/preview.html +0 -1119
- package/.opencode/oh-my-design/design-md/ubie/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/ubie/DESIGN.md +0 -615
- package/.opencode/oh-my-design/design-md/uniqlo/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/uniqlo/DESIGN.md +0 -575
- package/.opencode/oh-my-design/design-md/upbit/DESIGN.md +0 -337
- package/.opencode/oh-my-design/design-md/upbit/_research.md +0 -83
- package/.opencode/oh-my-design/design-md/upbit/assets/_reference/.live-inspect-proof.json +0 -263
- package/.opencode/oh-my-design/design-md/upbit/assets/_reference/fonts.json +0 -18
- package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture-exchange.json +0 -1901
- package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture.json +0 -1121
- package/.opencode/oh-my-design/design-md/upbit/assets/_reference/structure.json +0 -52
- package/.opencode/oh-my-design/design-md/upbit/assets/_reference/tokens.json +0 -169
- package/.opencode/oh-my-design/design-md/upstage/DESIGN.md +0 -270
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/.live-inspect-proof.json +0 -157
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_brand-resource-center.json +0 -44
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_curated-samples.json +0 -310
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_raw-capture.json +0 -1560
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_root-vars.json +0 -76
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_structure-raw.json +0 -298
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/fonts.json +0 -35
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/structure.json +0 -72
- package/.opencode/oh-my-design/design-md/upstage/assets/_reference/tokens.json +0 -183
- package/.opencode/oh-my-design/design-md/velog/.verification.md +0 -26
- package/.opencode/oh-my-design/design-md/velog/DESIGN.md +0 -196
- package/.opencode/oh-my-design/design-md/vercel/.verification.md +0 -134
- package/.opencode/oh-my-design/design-md/vercel/DESIGN.md +0 -523
- package/.opencode/oh-my-design/design-md/vercel/README.md +0 -24
- package/.opencode/oh-my-design/design-md/vercel/preview-dark.html +0 -368
- package/.opencode/oh-my-design/design-md/vercel/preview.html +0 -367
- package/.opencode/oh-my-design/design-md/voicetube/.verification.md +0 -34
- package/.opencode/oh-my-design/design-md/voicetube/DESIGN.md +0 -266
- package/.opencode/oh-my-design/design-md/voltagent/.verification.md +0 -159
- package/.opencode/oh-my-design/design-md/voltagent/DESIGN.md +0 -454
- package/.opencode/oh-my-design/design-md/voltagent/README.md +0 -24
- package/.opencode/oh-my-design/design-md/voltagent/preview-dark.html +0 -487
- package/.opencode/oh-my-design/design-md/voltagent/preview.html +0 -766
- package/.opencode/oh-my-design/design-md/wadiz/DESIGN.md +0 -415
- package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/.live-inspect-proof.json +0 -137
- package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/fonts.json +0 -17
- package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/structure.json +0 -35
- package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/tokens.json +0 -80
- package/.opencode/oh-my-design/design-md/wanted/DESIGN.md +0 -575
- package/.opencode/oh-my-design/design-md/wanted/_promo.json +0 -31
- package/.opencode/oh-my-design/design-md/wanted/_research.md +0 -119
- package/.opencode/oh-my-design/design-md/wantedly/.verification.md +0 -53
- package/.opencode/oh-my-design/design-md/wantedly/DESIGN.md +0 -437
- package/.opencode/oh-my-design/design-md/warp/.verification.md +0 -156
- package/.opencode/oh-my-design/design-md/warp/DESIGN.md +0 -431
- package/.opencode/oh-my-design/design-md/warp/README.md +0 -23
- package/.opencode/oh-my-design/design-md/warp/preview-dark.html +0 -500
- package/.opencode/oh-my-design/design-md/warp/preview.html +0 -533
- package/.opencode/oh-my-design/design-md/watcha/DESIGN.md +0 -465
- package/.opencode/oh-my-design/design-md/wavve/DESIGN.md +0 -480
- package/.opencode/oh-my-design/design-md/wconcept/DESIGN.md +0 -556
- package/.opencode/oh-my-design/design-md/webflow/.verification.md +0 -151
- package/.opencode/oh-my-design/design-md/webflow/DESIGN.md +0 -330
- package/.opencode/oh-my-design/design-md/webflow/README.md +0 -23
- package/.opencode/oh-my-design/design-md/webflow/preview-dark.html +0 -147
- package/.opencode/oh-my-design/design-md/webflow/preview.html +0 -146
- package/.opencode/oh-my-design/design-md/wired/.verification.md +0 -21
- package/.opencode/oh-my-design/design-md/wired/DESIGN.md +0 -572
- package/.opencode/oh-my-design/design-md/wise/.verification.md +0 -141
- package/.opencode/oh-my-design/design-md/wise/DESIGN.md +0 -317
- package/.opencode/oh-my-design/design-md/wise/README.md +0 -23
- package/.opencode/oh-my-design/design-md/wise/preview-dark.html +0 -230
- package/.opencode/oh-my-design/design-md/wise/preview.html +0 -229
- package/.opencode/oh-my-design/design-md/x.ai/.verification.md +0 -140
- package/.opencode/oh-my-design/design-md/x.ai/DESIGN.md +0 -397
- package/.opencode/oh-my-design/design-md/x.ai/README.md +0 -24
- package/.opencode/oh-my-design/design-md/x.ai/preview-dark.html +0 -356
- package/.opencode/oh-my-design/design-md/x.ai/preview.html +0 -407
- package/.opencode/oh-my-design/design-md/xiaohongshu/DESIGN.md +0 -462
- package/.opencode/oh-my-design/design-md/yanolja/.verification.md +0 -83
- package/.opencode/oh-my-design/design-md/yanolja/DESIGN.md +0 -508
- package/.opencode/oh-my-design/design-md/yeogiotte/.verification.md +0 -210
- package/.opencode/oh-my-design/design-md/yeogiotte/DESIGN.md +0 -500
- package/.opencode/oh-my-design/design-md/yogiyo/DESIGN.md +0 -515
- package/.opencode/oh-my-design/design-md/yourator/.verification.md +0 -39
- package/.opencode/oh-my-design/design-md/yourator/DESIGN.md +0 -453
- package/.opencode/oh-my-design/design-md/zapier/.verification.md +0 -156
- package/.opencode/oh-my-design/design-md/zapier/DESIGN.md +0 -474
- package/.opencode/oh-my-design/design-md/zapier/README.md +0 -24
- package/.opencode/oh-my-design/design-md/zapier/preview-dark.html +0 -380
- package/.opencode/oh-my-design/design-md/zapier/preview.html +0 -372
- package/.opencode/oh-my-design/design-md/zigbang/DESIGN.md +0 -500
- package/.opencode/oh-my-design/design-md/zigbang/_promo.json +0 -16
- package/.opencode/oh-my-design/design-md/zigbang/_research.md +0 -101
- package/.opencode/oh-my-design/design-md/zigzag/DESIGN.md +0 -695
- package/.opencode/oh-my-design/design-md/zigzag/_promo.json +0 -23
- package/.opencode/oh-my-design/design-md/zigzag/_research.md +0 -64
- package/.opencode/oh-my-design/design-md/zozotown/.verification.md +0 -20
- package/.opencode/oh-my-design/design-md/zozotown/DESIGN.md +0 -578
- package/.opencode/oh-my-design/packages/mcp/dist/index.mjs +0 -21685
- package/.opencode/oh-my-design/packages/mcp/dist/index.mjs.map +0 -1
- package/.opencode/tools/extract-design-pattern.py +0 -182
- package/.opencode/tools/sdd_design.ts +0 -303
|
@@ -1,317 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
id: tving
|
|
3
|
-
name: TVING
|
|
4
|
-
display_name_kr: TVING (티빙)
|
|
5
|
-
country: KR
|
|
6
|
-
category: consumer-tech
|
|
7
|
-
homepage: "https://www.tving.com"
|
|
8
|
-
primary_color: "#ff153c"
|
|
9
|
-
logo:
|
|
10
|
-
type: favicon
|
|
11
|
-
slug: "https://www.google.com/s2/favicons?domain=tving.com&sz=256"
|
|
12
|
-
verified: "2026-05-15"
|
|
13
|
-
omd: "0.1"
|
|
14
|
-
tokens:
|
|
15
|
-
source: prose-derived
|
|
16
|
-
extracted: "2026-06-09"
|
|
17
|
-
colors:
|
|
18
|
-
primary: "#ff153c"
|
|
19
|
-
canvas: "#000000"
|
|
20
|
-
on-primary: "#ffffff"
|
|
21
|
-
surface: "#2e2e2e"
|
|
22
|
-
surface-modal: "#111111"
|
|
23
|
-
surface-overlay: "#262626"
|
|
24
|
-
text-secondary: "#b3b3b3"
|
|
25
|
-
text-tertiary: "#a3a3a3"
|
|
26
|
-
disabled-bright: "#d9d9d9"
|
|
27
|
-
muted: "#6e6e6e"
|
|
28
|
-
disabled-deep: "#4f4f4f"
|
|
29
|
-
cate-home: "#ff1f45"
|
|
30
|
-
cate-live: "#ff584a"
|
|
31
|
-
cate-clip: "#fd8163"
|
|
32
|
-
cate-vod: "#387dff"
|
|
33
|
-
cate-movie: "#7d57fc"
|
|
34
|
-
cate-ad: "#fcc800"
|
|
35
|
-
typography:
|
|
36
|
-
family: { sans: "Pretendard", mono: "Pretendard" }
|
|
37
|
-
hero: { size: 43, weight: 700, use: "Hero headline, onboarding h2" }
|
|
38
|
-
cta: { size: 19, weight: 700, use: "Primary CTA label" }
|
|
39
|
-
secondary-nav: { size: 16, weight: 400, use: "Secondary nav" }
|
|
40
|
-
footer: { size: 16, weight: 400, use: "Footer link" }
|
|
41
|
-
nav-cta: { size: 14, weight: 700, use: "Nav CTA 티빙 시작하기" }
|
|
42
|
-
body: { size: 12, weight: 400, use: "Body baseline" }
|
|
43
|
-
spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 48 }
|
|
44
|
-
rounded: { sm: 3, md: 8, lg: 16, full: 9999 }
|
|
45
|
-
shadow:
|
|
46
|
-
none: "none"
|
|
47
|
-
components_harvested: true
|
|
48
|
-
components:
|
|
49
|
-
button-cta-hero: { type: button, bg: "#ff153c", fg: "#ffffff", radius: 12, font: "19/700", use: "Primary hero CTA" }
|
|
50
|
-
button-cta-nav: { type: button, bg: "#ff153c", fg: "#ffffff", radius: 8, font: "14/700", use: "Header inline CTA 티빙 시작하기" }
|
|
51
|
-
card-poster: { type: card, radius: 16, use: "Poster card, top-corners-only radius, art bleeds bottom edge" }
|
|
52
|
-
chip-meta: { type: badge, radius: 3, use: "Fine chip / tag / meta-label" }
|
|
53
|
-
avatar: { type: avatar, radius: 9999, use: "Avatar / circular icon" }
|
|
54
|
-
---
|
|
55
|
-
|
|
56
|
-
# Design System Inspiration of TVING (티빙)
|
|
57
|
-
|
|
58
|
-
## 1. Visual Theme & Atmosphere
|
|
59
|
-
|
|
60
|
-
TVING is Korea's CJ ENM-backed streaming platform, and its product surface reads like a cinema-darkened auditorium tuned for Korean primetime — the canvas is a near-absolute black (`#000000` locked at the document root), text floats in pure white (`#FFFFFF`) with a four-step gray scale beneath it (`#B3B3B3` → `#A3A3A3` → `#6E6E6E` → `#4F4F4F`), and the single chromatic interruption is a saturated red the brand encodes on `:root` as `--tving: 350 100% 54.12%` — runtime hex `#FF153C`. This is not a sentimental crimson. It is a hot, almost neon scarlet, applied with monastic discipline: across 3,000 sampled nodes, only twelve carry that red as a background — every one of them a CTA, a brand mark, or a live-status indicator. The platform's geometric signature is a top-corners-only card radius (`16.5292px 16.5292px 0 0`), engineered so poster art bleeds to the bottom edge of each tile — an OTT idiom shared with Disney+ and Wavve but tuned here to a 1.033rem radius that reads slightly tighter than industry default.
|
|
61
|
-
|
|
62
|
-
What distinguishes TVING from its Korean OTT peers is the **category-color taxonomy hardcoded into the design system itself**. Six content categories — home (`#FF1F45`), live (`#FF584A`), clip (`#FD8163`), VOD (`#387DFF`), movie (`#7D57FC`), and ad (`#FCC800`) — are not merely page accents but first-class `:root` CSS custom properties (`--color-cate-home`, `--color-cate-live`, etc.). Category color IS product taxonomy: when a user navigates between live KBO baseball, VOD drama, and clip browse, the chrome itself shifts hue. Reinforcing this, the system carries **dedicated live-streaming geometry tokens** — `--kbo-player-height`, `--sports-player-width`, `--live-tab-player-companion-banner-height` — meaning live sports is not a feature retrofitted onto a VOD player but a co-equal surface paradigm. Pretendard is the exclusive typeface (100% of samples; Apple SD Gothic Neo only as system fallback), weight discipline is binary (400 body / 700 heading and CTA — no 500/600 intermediates observed), and depth is constructed through layered dark surfaces (`#000` → `#2E2E2E` → `rgba(15,15,15,0.74)` overlay) rather than box-shadows, which return `0 0 #0000` on every sampled production element.
|
|
63
|
-
|
|
64
|
-
**Key Characteristics:**
|
|
65
|
-
- Locked dark canvas (`#000000` at `html`) — no light-mode token observed; the platform is dark-mode-only by design.
|
|
66
|
-
- Single brand red (`#FF153C`) reserved for CTAs and brand marks; observed on 4 of 12 dominant background colors, runtime alpha-variants `rgb(255,21,60)` / `rgb(254,21,60)` / `rgb(255,31,69)` all collapse to one canonical token.
|
|
67
|
-
- **Six-category color taxonomy as `:root` primitives** — home/live/clip/VOD/movie/ad each own a CSS custom property; rare case where color IS product information architecture.
|
|
68
|
-
- Top-corners-only card radius (`16.5292px 16.5292px 0 0`) for poster bleed — observed 20× on home surface alone.
|
|
69
|
-
- Pretendard exclusive (SIL OFL 1.1), weight binary (400 / 700).
|
|
70
|
-
- Box-shadow zero across product chrome — depth via surface contrast, not elevation.
|
|
71
|
-
- Dedicated live-streaming geometry tokens (`--kbo-player-*`, `--sports-player-*`) elevate live as a peer surface to VOD.
|
|
72
|
-
- Tailwind utility layer (`--tw-*`) + Emotion CSS-in-JS (`css-*` hashes) + shadcn-pattern semantic roles (`--card`, `--popover`, `--muted`) coexist — pragmatic framework stack, not opinionated DS purism.
|
|
73
|
-
|
|
74
|
-
## 2. Color Palette & Roles
|
|
75
|
-
|
|
76
|
-
### Brand
|
|
77
|
-
- **TVING Red** (`#FF153C`, canonical `--tving: 350 100% 54.12%` HSL) — primary CTA backgrounds, brand mark, live-status accents. Runtime alpha-variants observed (`#FE153C`, `#FF1F45`) collapse to one logical token.
|
|
78
|
-
- **Pure Black** (`#000000`) — locked canvas at `html` and `body`. No theme alternate observed.
|
|
79
|
-
- **Pure White** (`#FFFFFF`) — primary text on canvas; 519 occurrences in 3,000-node sample (dominant text color).
|
|
80
|
-
|
|
81
|
-
### Surface ladder (dark)
|
|
82
|
-
- `#000000` — canvas / page background (12 occurrences as bg)
|
|
83
|
-
- `#2E2E2E` — elevated card / chip surface (10 occurrences as bg)
|
|
84
|
-
- `#111111` / `#262626` — modal / overlay surface
|
|
85
|
-
- `rgba(15,15,15,0.74)` — bottom-sheet / scrim overlay
|
|
86
|
-
- `rgba(0,0,0,0.5)` — image-overlay scrim
|
|
87
|
-
- `rgba(255,255,255,0.1)` / `rgba(255,255,255,0.4)` — hover/active glass tint on poster cards
|
|
88
|
-
|
|
89
|
-
### Text scale (grayscale)
|
|
90
|
-
- `#FFFFFF` — primary text, headlines (519×)
|
|
91
|
-
- `#B3B3B3` — secondary body (169×)
|
|
92
|
-
- `#A3A3A3` — tertiary metadata (24×)
|
|
93
|
-
- `#D9D9D9` — disabled-bright (6×)
|
|
94
|
-
- `#6E6E6E` — muted hint (52×)
|
|
95
|
-
- `#4F4F4F` — disabled-deep (1×)
|
|
96
|
-
|
|
97
|
-
### Category taxonomy (first-class `:root` tokens)
|
|
98
|
-
- `--color-cate-home`: `#FF1F45` (home shelf)
|
|
99
|
-
- `--color-cate-live`: `#FF584A` (live streaming)
|
|
100
|
-
- `--color-cate-clip`: `#FD8163` (short-form clips)
|
|
101
|
-
- `--color-cate-vod`: `#387DFF` (on-demand)
|
|
102
|
-
- `--color-cate-movie`: `#7D57FC` (films)
|
|
103
|
-
- `--color-cate-ad`: `#FCC800` (sponsored / ad indicator)
|
|
104
|
-
|
|
105
|
-
### Border
|
|
106
|
-
- `hsl(0,0%,31%)` (`--border`) — hairline divider; rendered at 1px on dark surface, near-invisible until hover.
|
|
107
|
-
|
|
108
|
-
## 3. Typography
|
|
109
|
-
|
|
110
|
-
Pretendard exclusive. No display accent face. No serif. Weight binary.
|
|
111
|
-
|
|
112
|
-
| Role | Family | Size (observed) | Weight |
|
|
113
|
-
|---|---|---|---|
|
|
114
|
-
| Hero headline (h2 onboarding) | Pretendard | 43.4px | 700 |
|
|
115
|
-
| Body baseline | Pretendard | 12.4px | 400 |
|
|
116
|
-
| Primary CTA label | Pretendard | 18.6px | 700 |
|
|
117
|
-
| Nav CTA ('티빙 시작하기') | Pretendard | 14px | 700 |
|
|
118
|
-
| Footer link | Pretendard | 15.5px | 400 / 700 mixed |
|
|
119
|
-
| Secondary nav | Pretendard | 16px | 400 |
|
|
120
|
-
|
|
121
|
-
**Stack:** `Pretendard, -apple-system, "system-ui", Roboto, "Segoe UI", Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif`
|
|
122
|
-
|
|
123
|
-
CDN: `https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css` (SIL OFL 1.1).
|
|
124
|
-
|
|
125
|
-
## 4. Shape & Radius
|
|
126
|
-
|
|
127
|
-
Base token `--radius: 0.5rem` (8px), but runtime values cluster at three points:
|
|
128
|
-
|
|
129
|
-
| Radius | Frequency | Role |
|
|
130
|
-
|---|---|---|
|
|
131
|
-
| `16.5292px` (top-corners only) | 41× (20× as top-only) | Poster card top — image bleeds bottom edge |
|
|
132
|
-
| `12.4px` | 3× | Primary hero CTA |
|
|
133
|
-
| `8px` | 1× observed | Header inline CTA |
|
|
134
|
-
| `3px` (and top-only) | 13× (10× top-only) | Fine chip / tag / meta-label |
|
|
135
|
-
| `50%` | 4× | Avatar / circular icon |
|
|
136
|
-
| `9999px` | 1× | Pill (rare) |
|
|
137
|
-
|
|
138
|
-
The signature is **top-corners-only on poster cards** — bottom edge sits flush against metadata so poster art reads as bleed, not framed.
|
|
139
|
-
|
|
140
|
-
## 5. Spacing & Layout
|
|
141
|
-
|
|
142
|
-
Layout primitives carried as CSS custom properties on `:root`:
|
|
143
|
-
|
|
144
|
-
| Token | Value | Role |
|
|
145
|
-
|---|---|---|
|
|
146
|
-
| `--gnb-height` | `70px` | Global nav bar (authenticated) |
|
|
147
|
-
| `--header-height` | `4rem` (64px) | Marketing / onboarding header |
|
|
148
|
-
| `--bottom-tab-height` | `4.167rem` (≈66.7px) | Mobile bottom tab bar |
|
|
149
|
-
| `--safe-area-inset-{top,bottom,left,right}` | dynamic | iOS PWA safe areas |
|
|
150
|
-
| `--content-inset-{top,bottom,right}` | `0px` (default) | Dynamic content insets when player docked |
|
|
151
|
-
| `--live-tab-player-height-desktop` | `calc((100vw - 40rem) * 0.5625)` | 16:9 docked player |
|
|
152
|
-
| `--kbo-player-width` | `calc(100vw - 31.25rem)` | KBO baseball player width (subtracts 500px sidebar) |
|
|
153
|
-
| `--sports-player-height` | `calc((100vw - 31.25rem) * 0.5625)` | Sports player 16:9 |
|
|
154
|
-
|
|
155
|
-
Page viewport: `1280×713` (desktop test). Onboarding scroll height `4,440px` (~6.22 viewports).
|
|
156
|
-
|
|
157
|
-
## 6. Elevation & Depth
|
|
158
|
-
|
|
159
|
-
**Box-shadow returns `0 0 #0000` on every sampled product element.** Depth is constructed via surface contrast:
|
|
160
|
-
|
|
161
|
-
1. Canvas `#000000`
|
|
162
|
-
2. Elevated `#2E2E2E` (+46 luminance)
|
|
163
|
-
3. Modal/overlay `rgba(15,15,15,0.74)`
|
|
164
|
-
4. Glass tint `rgba(255,255,255,0.1)` on hover
|
|
165
|
-
|
|
166
|
-
The `--tw-shadow` and `--tw-drop-shadow` Tailwind tokens exist but render as zero — design discipline, not framework limitation.
|
|
167
|
-
|
|
168
|
-
## 7. Iconography & Imagery
|
|
169
|
-
|
|
170
|
-
Not directly inspected this pass (authenticated browse gated). System signals:
|
|
171
|
-
- Avatar / circular icons use `50%` radius (4 observed).
|
|
172
|
-
- Live indicators presumed to use `--color-cate-live` (`#FF584A`) as fill.
|
|
173
|
-
- Poster art is the dominant visual asset on browse surfaces; placeholder ratio inferred at 2:3 portrait (industry standard, confirmed by top-corners-only card geometry).
|
|
174
|
-
|
|
175
|
-
## 8. Motion
|
|
176
|
-
|
|
177
|
-
Not captured live (no interactions triggered during static-state inspect). System carries Swiper carousel (`--swiper-theme-color: #007AFF`) and SweetAlert2 (`--swal2-width: 30rem`) as vendor primitives. Tailwind transform tokens (`--tw-translate-{x,y}`, `--tw-rotate`, `--tw-scale-{x,y}`) are reset to default — motion is applied per-component, not from `:root`.
|
|
178
|
-
|
|
179
|
-
Flagged for UPDATE pass: hover transitions on poster cards, player chrome fade timing, modal entrance curves.
|
|
180
|
-
|
|
181
|
-
## 9. Component Patterns & States
|
|
182
|
-
|
|
183
|
-
### Primary CTA (`프로모션 보기`, `티빙 시작하기`)
|
|
184
|
-
- Background: `#FF153C` (canonical brand red)
|
|
185
|
-
- Color: `#FFFFFF`
|
|
186
|
-
- Radius: `12.4px` (hero) / `8px` (header inline)
|
|
187
|
-
- Padding: `19.6292px 62px` (hero) — generous horizontal, allowing 4-syllable Korean CTAs without wrap
|
|
188
|
-
- Font: Pretendard 18.6px / 700 (hero), 14px / 700 (header)
|
|
189
|
-
- Height: 62px (hero), 32px (header)
|
|
190
|
-
- Border: none
|
|
191
|
-
|
|
192
|
-
### Secondary / nav links
|
|
193
|
-
- Color: `#A3A3A3` default, `#FFFFFF` active
|
|
194
|
-
- Size: 15.5px / 400 (passive), 700 (current)
|
|
195
|
-
- No background, no border
|
|
196
|
-
|
|
197
|
-
### Footer
|
|
198
|
-
- Background: `#000000` (continuous with canvas)
|
|
199
|
-
- Links: `#A3A3A3` 15.5px; `개인정보처리방침` rendered at weight 700 (legal-emphasis convention)
|
|
200
|
-
|
|
201
|
-
### Live status
|
|
202
|
-
- Presumed to use `#FF584A` (`--color-cate-live`) with circular pulse indicator (live token system suggests dedicated chrome).
|
|
203
|
-
|
|
204
|
-
## 10. Voice & Tone
|
|
205
|
-
|
|
206
|
-
TVING's product voice — observed from button labels, footer copy register, and onboarding headline structure — is **concise, action-oriented, casual-polite Korean (`-요/-세요`)**. No exclamation marks observed on CTAs. No marketing superlatives within product chrome. The onboarding headline `지금 시작해보세요` is grammatically a polite imperative without emphasis — invitation, not exhortation.
|
|
207
|
-
|
|
208
|
-
The voice register sits between Netflix Korea's neutral-formal and Wavve's slightly more casual approach. Footer items use legal-register nouns (`이용약관`, `법적고지`) without softening.
|
|
209
|
-
|
|
210
|
-
**Voice samples (OmD-original analyst characterizations — NOT verbatim from TVING):**
|
|
211
|
-
- Action: "지금 보세요" / "이어서 보기" / "시청 계속하기"
|
|
212
|
-
- Status: "라이브 진행 중" / "오늘 공개" / "에피소드 12까지"
|
|
213
|
-
- Empty / error: "잠시 후 다시 시도해주세요" / "지금은 시청할 수 없어요"
|
|
214
|
-
|
|
215
|
-
IP guardrail: TVING's actual marketing taglines (`스트리밍의 모든 것`, etc.) are NOT reproduced in this DESIGN.md. Voice samples above are fresh illustrative reconstructions in the observed register.
|
|
216
|
-
|
|
217
|
-
## 11. Brand Narrative (Reported Facts Only)
|
|
218
|
-
|
|
219
|
-
TVING is operated by **TVING Inc.**, a subsidiary of **CJ ENM** (Korea's largest media conglomerate). Originally launched in 2010 as a CJ Hellovision live-TV streaming service, the platform was relaunched in 2020 as a standalone OTT after CJ ENM spun off TVING as an independent company in partnership with JTBC Studios. The platform's competitive thesis is **K-content provenance** — CJ ENM and JTBC together produce a large share of Korea's tvN, JTBC, and CJ-affiliated drama and entertainment IP, giving TVING first-window exclusivity on a substantial portion of Korean primetime programming. In 2022, TVING absorbed Paramount+ Korean operations under a content partnership.
|
|
220
|
-
|
|
221
|
-
Headquarters: Seoul, South Korea. Service domain: `www.tving.com`. The 🐴 horse emoji prefixing the browser tab title is a 2024-2025 brand-personality device tied to TVING's marketing campaigns.
|
|
222
|
-
|
|
223
|
-
**[FILL IN]**: Exact subscriber count, current CEO, latest funding round are not verified at OmD attribution fidelity in this pass — flagged for UPDATE if needed.
|
|
224
|
-
|
|
225
|
-
## 12. Personas (Inferred, Public-Surveys-Only)
|
|
226
|
-
|
|
227
|
-
**[FILL IN]** — Personas below are **inferred from public market positioning** (CJ ENM K-content focus, live-sports investment, mobile-first chrome), not from TVING-published user research:
|
|
228
|
-
|
|
229
|
-
1. **K-drama primetime viewer (25-44, urban, mobile)** — watches tvN / JTBC originals same-night-as-broadcast; values episode-tracking continuity and download-for-commute.
|
|
230
|
-
2. **Live sports follower (KBO baseball, 30-55, dual-screen)** — uses TVING during commute and at home for live KBO games (TVING holds KBO streaming rights); dedicated `--kbo-player-*` tokens confirm this user is a first-class design target.
|
|
231
|
-
3. **Variety-show casual (teens-20s, social)** — clips surface (`--color-cate-clip`) suggests short-form viewing pattern for variety highlights, shared into chat apps.
|
|
232
|
-
|
|
233
|
-
Authentic persona work would require access to TVING's internal research or commissioned surveys — explicitly out of scope here.
|
|
234
|
-
|
|
235
|
-
## 13. Anti-Patterns & Don'ts
|
|
236
|
-
|
|
237
|
-
**Do NOT, when porting this design language to your own product:**
|
|
238
|
-
|
|
239
|
-
1. **Don't replicate the locked dark canvas if your content is not video.** TVING's `#000` works because poster art and video frames provide all the visual energy. A dark-mode SaaS dashboard or marketplace inherits the gloom without inheriting the cinema.
|
|
240
|
-
2. **Don't claim a six-category taxonomy without earning it.** The `--color-cate-*` system works because TVING genuinely has six content surface paradigms (live sports, live TV, VOD drama, VOD movie, clips, ads). Adopting six taxonomy hues for a product with three actual surfaces produces visual noise.
|
|
241
|
-
3. **Don't replicate `#FF153C` verbatim.** It is a CJ ENM brand color in spirit; shift via `delta_set` if you want a "TVING-like" warm scarlet — try `#E0142E` to `#FF2A4D` range with WCAG-checked contrast on dark surface.
|
|
242
|
-
4. **Don't skip Pretendard for "system font."** TVING's typography reads tight and modern because Pretendard's optical sizing differs from Apple SD Gothic Neo at the 12-18px display range. System fallback degrades the character meaningfully.
|
|
243
|
-
5. **Don't apply top-corners-only radius to non-poster cards.** That geometry is meaningful only when the bottom edge is an image bleed; on a text card it reads as a CSS mistake.
|
|
244
|
-
6. **Don't import the live-streaming geometry tokens as-is.** `--kbo-player-width: calc(100vw - 31.25rem)` is calibrated to TVING's specific sidebar — meaningless context elsewhere.
|
|
245
|
-
|
|
246
|
-
## 14. Implementation Notes
|
|
247
|
-
|
|
248
|
-
- **Stack**: Next.js (inferred from chunked CSS class hashes) + Emotion CSS-in-JS + Tailwind utility layer + shadcn/ui-pattern semantic role tokens.
|
|
249
|
-
- **Token strategy**: HSL components in CSS vars (`350 100% 54.12%`) so `hsl(var(--tving) / 0.5)` produces alpha variants without separate tokens — a shadcn idiom.
|
|
250
|
-
- **Live geometry**: All live-streaming player dimensions are `calc()` expressions against `100vw` minus a fixed sidebar — meaning the player resizes responsively to viewport while sidebar stays pinned.
|
|
251
|
-
- **iOS PWA**: `--safe-area-inset-*` plumbed throughout — TVING ships as a native-feeling PWA on iOS in addition to native apps.
|
|
252
|
-
- **Vendor coexistence**: SweetAlert2 (modal), Swiper (carousel), and the bundled shadcn-pattern primitives all run side-by-side. Pragmatic, not opinionated.
|
|
253
|
-
|
|
254
|
-
## 15. Verification
|
|
255
|
-
|
|
256
|
-
| § | Source | Date | Confidence |
|
|
257
|
-
|---|---|---|---|
|
|
258
|
-
| 1, 2, 3, 4, 5, 6, 9 | Live CDP capture via browser-harness :9222 — 13 raw_samples, 114 :root CSS custom properties, 3000-node frequency analysis | 2026-05-15 | High |
|
|
259
|
-
| 7, 8 | Token-level signals only (interactions not triggered in static inspect) | 2026-05-15 | Medium (flagged for UPDATE) |
|
|
260
|
-
| 10 | Observed button labels + footer copy register; voice samples are OmD-original analyst reconstructions | 2026-05-15 | Medium (no verbatim adoption) |
|
|
261
|
-
| 11 | Public corporate narrative (CJ ENM / TVING Inc. press history) | 2026-05-15 | Medium (subscriber/CEO marked FILL IN) |
|
|
262
|
-
| 12 | **Inferred only** — no TVING-published persona research consulted | 2026-05-15 | Low (explicitly flagged) |
|
|
263
|
-
| 13 | OmD-original analytical guidance | 2026-05-15 | High (analyst opinion) |
|
|
264
|
-
|
|
265
|
-
### Tier 1 — Official Design System
|
|
266
|
-
**Result: negative (documented).**
|
|
267
|
-
|
|
268
|
-
Probed all canonical subdomain patterns:
|
|
269
|
-
- `design.tving.com` → DNS 000
|
|
270
|
-
- `brand.tving.com` → DNS 000
|
|
271
|
-
- `tech.tving.com` → DNS 000
|
|
272
|
-
- `tving.com/design` → 404
|
|
273
|
-
- GitHub `tving` org → 1 repo (`tving.github.io`, empty)
|
|
274
|
-
- CJ ENM corporate channels — no public TVING-branded DS portal
|
|
275
|
-
|
|
276
|
-
The production CSS `:root` token set (114 custom properties) extracted via live CDP capture is the closest authoritative public artifact and is treated here as the de-facto source of truth.
|
|
277
|
-
|
|
278
|
-
### Tier 2 — Third-party indexes
|
|
279
|
-
- `getdesign.md/q/tving` → 404
|
|
280
|
-
- `styles.refero.design/?q=tving` → 200 with no result cards
|
|
281
|
-
|
|
282
|
-
Consistent with the systemic Korean-coverage gap.
|
|
283
|
-
|
|
284
|
-
### IP Guardrails
|
|
285
|
-
- Brand assets (logo, name, `#FF153C`) referenced for analysis only — not redistributed.
|
|
286
|
-
- §10 Voice samples are **fresh OmD-original analyst reconstructions** in the observed register — no verbatim TVING marketing copy or taglines reproduced.
|
|
287
|
-
- §11 narrative is sourced from publicly reported facts (CJ ENM corporate history); subscriber/CEO/funding marked **[FILL IN]** where attribution fidelity is insufficient.
|
|
288
|
-
- §12 personas are explicitly inferred from market positioning; authentic persona work would require TVING-internal research.
|
|
289
|
-
- Content thumbnails (poster art, hero stills, episode metadata) NOT captured into product DOM or this DESIGN.md. Reference screenshot kept under fair-use commentary.
|
|
290
|
-
|
|
291
|
-
### Flagged for UPDATE pass
|
|
292
|
-
- Authenticated browse / VOD detail / live KBO player surfaces — gated, not inspected.
|
|
293
|
-
- Motion timing (poster card hover, player chrome fade, modal entrance) — requires interaction triggers.
|
|
294
|
-
- Exact live category-color usage on chrome — `--color-cate-*` system observed in tokens but per-surface application not visually verified.
|
|
295
|
-
- TVING subscriber count, current CEO, latest funding, founding-year specifics for §11.
|
|
296
|
-
|
|
297
|
-
---
|
|
298
|
-
|
|
299
|
-
*Captured via `omd:add-reference` (CREATE mode) on 2026-05-15. See `assets/_reference/` for tokens.json, structure.json, fonts.json, .live-inspect-proof.json, screenshots/, LICENSE-NOTE.md, attribution.md.*
|
|
300
|
-
|
|
301
|
-
## 16. Do's and Don'ts
|
|
302
|
-
|
|
303
|
-
### Do
|
|
304
|
-
- Lock the canvas to pure black (#000000) at the document root and build depth through surface contrast (#000 → #2E2E2E → rgba(15,15,15,0.74)) since box-shadow renders 0 0 #0000 across all product chrome
|
|
305
|
-
- Reserve the brand red #FF153C strictly for CTAs, brand marks, and live-status accents — keeping it to a handful of background nodes the way the doc samples only twelve red backgrounds across 3,000 nodes
|
|
306
|
-
- Drive content-area-aware chrome from the six --color-cate-* tokens (home #FF1F45, live #FF584A, clip #FD8163, VOD #387DFF, movie #7D57FC, ad #FCC800) so color carries product taxonomy
|
|
307
|
-
- Apply the top-corners-only radius (16.5292px 16.5292px 0 0) to poster cards so the image bleeds flush to the bottom metadata edge
|
|
308
|
-
- Set Pretendard as the exclusive typeface and hold weights to the binary 400 body / 700 heading-and-CTA scale, with no 500/600 intermediates
|
|
309
|
-
- Build primary CTAs as #FF153C background, #FFFFFF label, Pretendard 18.6px/700 with generous 19.6292px 62px padding so 4-syllable Korean labels never wrap
|
|
310
|
-
|
|
311
|
-
### Don't
|
|
312
|
-
- Spread #FF153C across large background areas or decorative fills — it is a CTA, brand-mark, and live-status accent only, never an ambient surface color
|
|
313
|
-
- Apply the locked dark canvas to non-video products, since #000 earns its energy from poster art and video frames a SaaS dashboard or marketplace cannot supply
|
|
314
|
-
- Adopt the six --color-cate-* taxonomy hues for a product with fewer than six genuine content surface paradigms, which only produces visual noise
|
|
315
|
-
- Reproduce #FF153C verbatim as it is a CJ ENM brand color — shift it within the #E0142E–#FF2A4D range with WCAG contrast checks on dark surface if you want a TVING-like scarlet
|
|
316
|
-
- Substitute a system font for Pretendard, whose optical sizing differs meaningfully from Apple SD Gothic Neo at the 12–18px display range
|
|
317
|
-
- Apply the top-corners-only radius to text cards or import the live geometry tokens (e.g. --kbo-player-width: calc(100vw - 31.25rem)) as-is, since both are calibrated to TVING's poster bleed and specific sidebar
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"navigated_at": "2026-05-15T00:00:00Z",
|
|
3
|
-
"source_url": "https://www.tving.com (redirected to https://www.tving.com/onboarding for unauth state)",
|
|
4
|
-
"viewport": "1280x713",
|
|
5
|
-
"tool_used": "browser-harness CDP :9222 (Chrome remote-debugging)",
|
|
6
|
-
"method": "new_tab + wait_for_load + js(getComputedStyle sampling) + capture_screenshot",
|
|
7
|
-
"raw_samples": [
|
|
8
|
-
{
|
|
9
|
-
"element_selector": "body",
|
|
10
|
-
"font-family": "Pretendard, -apple-system, \"system-ui\", Roboto, \"Segoe UI\", ...",
|
|
11
|
-
"color": "rgb(255, 255, 255)",
|
|
12
|
-
"background-color": "rgb(0, 0, 0)",
|
|
13
|
-
"font-size": "12.4px"
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
"element_selector": "html",
|
|
17
|
-
"background-color": "rgb(0, 0, 0)",
|
|
18
|
-
"note": "Dark canvas locked at root; surfaces remain dark across hero/onboarding"
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"element_selector": "BUTTON.css-2ecmcz (primary CTA '프로모션 보기')",
|
|
22
|
-
"background-color": "rgb(255, 21, 60)",
|
|
23
|
-
"color": "rgb(255, 255, 255)",
|
|
24
|
-
"border-radius": "12.4px",
|
|
25
|
-
"padding": "19.6292px 62px",
|
|
26
|
-
"font-weight": "700",
|
|
27
|
-
"font-size": "18.6px",
|
|
28
|
-
"height": "62px"
|
|
29
|
-
},
|
|
30
|
-
{
|
|
31
|
-
"element_selector": "A '티빙 시작하기' (header CTA)",
|
|
32
|
-
"background-color": "rgb(254, 21, 60)",
|
|
33
|
-
"color": "rgb(255, 255, 255)",
|
|
34
|
-
"border-radius": "8px",
|
|
35
|
-
"height": "32px",
|
|
36
|
-
"font-weight": "700",
|
|
37
|
-
"font-size": "14px"
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"element_selector": "h2 '지금 시작해보세요'",
|
|
41
|
-
"color": "rgb(255, 255, 255)",
|
|
42
|
-
"font-size": "43.4px",
|
|
43
|
-
"font-weight": "700",
|
|
44
|
-
"font-family": "Pretendard"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"element_selector": "footer nav a (이용약관/개인정보처리방침 등)",
|
|
48
|
-
"color": "rgb(163, 163, 163)",
|
|
49
|
-
"font-size": "15.5px",
|
|
50
|
-
"font-weight": "400-700 mixed"
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
"element_selector": ":root --tving (HSL)",
|
|
54
|
-
"value": "350 100% 54.12%",
|
|
55
|
-
"note": "Canonical brand token; equivalent hex ≈ #FF153C (matches observed CTA bg rgb(255,21,60))"
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"element_selector": ":root --color-cate-home / live / clip / vod / movie / ad",
|
|
59
|
-
"values": {
|
|
60
|
-
"home": "#ff1f45",
|
|
61
|
-
"live": "#ff584a",
|
|
62
|
-
"clip": "#fd8163",
|
|
63
|
-
"vod": "#387dff",
|
|
64
|
-
"movie": "#7d57fc",
|
|
65
|
-
"ad": "#fcc800"
|
|
66
|
-
},
|
|
67
|
-
"note": "Six-category taxonomy hardcoded as CSS custom properties — distinctive brand signature"
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
"element_selector": ":root --gnb-height / --header-height / --bottom-tab-height",
|
|
71
|
-
"values": {
|
|
72
|
-
"gnb-height": "70px",
|
|
73
|
-
"header-height": "4rem",
|
|
74
|
-
"bottom-tab-height": "4.167rem"
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
"element_selector": ":root --radius",
|
|
79
|
-
"value": "0.5rem",
|
|
80
|
-
"note": "Base radius token; observed runtime values 8px / 12.4px / 16.5292px (largest = card top corners)"
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
"element_selector": "top color frequency (body-level sampling, 3000 nodes)",
|
|
84
|
-
"values": {
|
|
85
|
-
"rgb(255,255,255)": 519,
|
|
86
|
-
"rgb(179,179,179)": 169,
|
|
87
|
-
"rgb(110,110,110)": 52,
|
|
88
|
-
"rgb(163,163,163)": 24,
|
|
89
|
-
"rgb(217,217,217)": 6
|
|
90
|
-
},
|
|
91
|
-
"note": "White + 4-step gray scale dominates text; zero non-grayscale text color"
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
"element_selector": "top background frequency",
|
|
95
|
-
"values": {
|
|
96
|
-
"rgb(0,0,0)": 12,
|
|
97
|
-
"rgb(46,46,46)": 10,
|
|
98
|
-
"rgb(255,21,60)": 2,
|
|
99
|
-
"rgb(255,31,69)": 1,
|
|
100
|
-
"rgb(254,21,60)": 1,
|
|
101
|
-
"rgba(0,0,0,0.5)": 1
|
|
102
|
-
},
|
|
103
|
-
"note": "Three near-identical reds (255,21,60 / 254,21,60 / 255,31,69) — runtime alpha/hover variants of canonical --tving #FF153C"
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
"element_selector": "top radius frequency",
|
|
107
|
-
"values": {
|
|
108
|
-
"16.5292px": 41,
|
|
109
|
-
"16.5292px 16.5292px 0px 0px": 20,
|
|
110
|
-
"3px": 13,
|
|
111
|
-
"3px 3px 0px 0px": 10,
|
|
112
|
-
"50%": 4,
|
|
113
|
-
"12.4px": 3
|
|
114
|
-
},
|
|
115
|
-
"note": "Card top-corner-only radius pattern (poster bleed); fine 3px chips; circular for avatars"
|
|
116
|
-
}
|
|
117
|
-
],
|
|
118
|
-
"css_var_count": 114,
|
|
119
|
-
"css_var_namespaces": [
|
|
120
|
-
"--tving (brand)",
|
|
121
|
-
"--color-cate-* (6 category hues)",
|
|
122
|
-
"--gnb-height / --header-height / --bottom-tab-height / --content-inset-* (layout)",
|
|
123
|
-
"--live-tab-* / --kbo-player-* / --sports-player-* (live-streaming geometry)",
|
|
124
|
-
"--safe-area-inset-* (iOS PWA)",
|
|
125
|
-
"--tw-* (tailwind utility)",
|
|
126
|
-
"--swal2-* / --swiper-* (vendor)",
|
|
127
|
-
"--card / --popover / --muted / --accent / --background / --foreground (shadcn-pattern semantic)"
|
|
128
|
-
],
|
|
129
|
-
"screenshot_captured": "screenshots/hero-desktop.png (1280x713, above-fold)",
|
|
130
|
-
"ip_guardrail_note": "Content thumbnails (poster art, hero stills) NOT captured into product DOM. Only reference screenshot kept under fair-use commentary. No verbatim taglines reproduced in DESIGN.md."
|
|
131
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
# License Note — tving Reference Capture
|
|
2
|
-
|
|
3
|
-
This directory contains design-reference materials captured from
|
|
4
|
-
**TVING (티빙)**'s public website on **2026-05-15** for the purpose of
|
|
5
|
-
informing UI design work in this project.
|
|
6
|
-
|
|
7
|
-
## What's here is for REFERENCE, not REDISTRIBUTION
|
|
8
|
-
|
|
9
|
-
- **Design tokens** (colors, fonts, spacing, radii) — `tokens.json` /
|
|
10
|
-
`structure.json` / `fonts.json`. These are facts about the brand's
|
|
11
|
-
design system and may inform your own design.
|
|
12
|
-
- **Logo / screenshots** — captured for visual recognition during
|
|
13
|
-
development. These are CJ ENM / TVING trademarks and copyrighted
|
|
14
|
-
visual works. Do not embed in your own product, marketing, or any
|
|
15
|
-
redistribution. Replace with your own brand mark before shipping.
|
|
16
|
-
- **Content thumbnails** (poster art, hero stills) — copyrighted by
|
|
17
|
-
respective rights holders (studios, distributors). NOT captured
|
|
18
|
-
into product DOM; reference screenshots only.
|
|
19
|
-
|
|
20
|
-
## What you should NOT do
|
|
21
|
-
|
|
22
|
-
- Embed `logo.*` or `screenshots/*.png` in your own product UI.
|
|
23
|
-
- Copy `tokens.json` hex values into your own brand without shifting
|
|
24
|
-
via `delta_set` (see omd:init).
|
|
25
|
-
- Copy any marketing text, taglines, or content metadata verbatim.
|
|
26
|
-
- Reuse poster art or content stills.
|
|
27
|
-
|
|
28
|
-
## What you SHOULD do
|
|
29
|
-
|
|
30
|
-
- Use the **design language** (token relationships, dark-canvas
|
|
31
|
-
composition patterns, category-color taxonomy, voice register) to
|
|
32
|
-
inform your project's DESIGN.md.
|
|
33
|
-
- Replace all brand-identifying assets with your own before sharing.
|
|
34
|
-
|
|
35
|
-
See `attribution.md` for source URLs and capture timestamps.
|
|
36
|
-
|
|
37
|
-
This note is generated by `omd:add-reference`. Do not edit by hand.
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
# Attribution — tving Reference Capture
|
|
2
|
-
|
|
3
|
-
Captured: **2026-05-15** via `omd:add-reference` (CREATE mode) + `browser-harness` CDP :9222
|
|
4
|
-
|
|
5
|
-
## Sources
|
|
6
|
-
|
|
7
|
-
| File | Source URL | Captured | Notes |
|
|
8
|
-
|---|---|---|---|
|
|
9
|
-
| `tokens.json` | https://www.tving.com (→ /onboarding) | 2026-05-15 | Computed styles via browser-harness CDP, factual analysis |
|
|
10
|
-
| `structure.json` | https://www.tving.com (→ /onboarding) | 2026-05-15 | Observable composition facts (CSS vars, layout geometry, category taxonomy) |
|
|
11
|
-
| `fonts.json` | https://www.tving.com | 2026-05-15 | Computed `font-family` first-token + known-font registry match |
|
|
12
|
-
| `.live-inspect-proof.json` | https://www.tving.com | 2026-05-15 | 13 raw_samples (≥5 floor), 114 CSS custom properties captured |
|
|
13
|
-
| `screenshots/hero-desktop.png` | https://www.tving.com (1280×713) | 2026-05-15 | Reference for design alignment — onboarding surface (unauth) |
|
|
14
|
-
|
|
15
|
-
## Skipped (URL recorded for manual review)
|
|
16
|
-
|
|
17
|
-
- Authenticated browse / VOD detail / live player surfaces — gated behind login, not inspected in this pass. Flagged for UPDATE.
|
|
18
|
-
- Content thumbnail / poster art — copyrighted by respective rights holders (studios, distributors). NOT downloaded.
|
|
19
|
-
- Marketing video assets — skipped per skill policy.
|
|
20
|
-
|
|
21
|
-
## Tier-1 Official Design System
|
|
22
|
-
|
|
23
|
-
**Result: negative (documented).**
|
|
24
|
-
|
|
25
|
-
Probed (all DNS no-resolve or 404 as of 2026-05-15):
|
|
26
|
-
- `design.tving.com` → DNS 000
|
|
27
|
-
- `brand.tving.com` → DNS 000
|
|
28
|
-
- `tech.tving.com` → DNS 000
|
|
29
|
-
- `tving.com/design` → 404
|
|
30
|
-
- GitHub `tving` org → 1 repo only (`tving.github.io`, no DS content)
|
|
31
|
-
- CJ ENM corporate channels — no public TVING-branded DS portal
|
|
32
|
-
|
|
33
|
-
The production CSS `:root` token set (114 custom properties, captured via CDP) is the closest authoritative public artifact and was extracted directly.
|
|
34
|
-
|
|
35
|
-
## Tier-2 Indexes
|
|
36
|
-
|
|
37
|
-
- `getdesign.md/q/tving` → 404
|
|
38
|
-
- `styles.refero.design/?q=tving` → 200 but no result cards
|
|
39
|
-
|
|
40
|
-
Consistent with the systemic Korean-coverage gap.
|
|
41
|
-
|
|
42
|
-
## Rights
|
|
43
|
-
|
|
44
|
-
These materials are owned by **CJ ENM** (TVING Inc.) and its respective
|
|
45
|
-
rights holders. Captured under fair-use principles for the purpose of
|
|
46
|
-
design analysis and development reference. See `LICENSE-NOTE.md` for
|
|
47
|
-
usage boundaries.
|
|
48
|
-
|
|
49
|
-
## Refresh
|
|
50
|
-
|
|
51
|
-
Rerun `omd:add-reference tving` to recapture. Tokens reflect the live
|
|
52
|
-
site at capture time and may drift as the brand evolves.
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"captured_at": "2026-05-15T00:00:00Z",
|
|
3
|
-
"fonts": [
|
|
4
|
-
{
|
|
5
|
-
"family": "Pretendard",
|
|
6
|
-
"license": "SIL OFL 1.1 (open-source, free for commercial use)",
|
|
7
|
-
"cdn_url": "https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css",
|
|
8
|
-
"html_link": "<link rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css\" />",
|
|
9
|
-
"live_observed": true,
|
|
10
|
-
"role": "body + heading + CTA (exclusive — 100% of sampled elements)",
|
|
11
|
-
"observed_weights": [400, 700]
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
"family": "-apple-system",
|
|
15
|
-
"license": "system (macOS/iOS)",
|
|
16
|
-
"cdn_url": null,
|
|
17
|
-
"html_link": null,
|
|
18
|
-
"live_observed": false,
|
|
19
|
-
"role": "system fallback (#2 in stack)"
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
"family": "system-ui",
|
|
23
|
-
"license": "system",
|
|
24
|
-
"cdn_url": null,
|
|
25
|
-
"html_link": null,
|
|
26
|
-
"live_observed": false,
|
|
27
|
-
"role": "system fallback (#3 in stack)"
|
|
28
|
-
}
|
|
29
|
-
],
|
|
30
|
-
"full_fallback_chain": "Pretendard, -apple-system, \"system-ui\", Roboto, \"Segoe UI\", Oxygen, Ubuntu, Cantarell, \"Open Sans\", \"Helvetica Neue\", sans-serif"
|
|
31
|
-
}
|
package/.opencode/oh-my-design/design-md/tving/assets/_reference/screenshots/hero-desktop.png
DELETED
|
Binary file
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"captured_at": "2026-05-15T00:00:00Z",
|
|
3
|
-
"source_url": "https://www.tving.com (→ /onboarding)",
|
|
4
|
-
"viewport": "1280x713",
|
|
5
|
-
"hero": {
|
|
6
|
-
"type": "text-only (unauth onboarding) — full content surface gated behind login; authenticated surface presumed video-poster grid (industry-standard OTT pattern, not inspected in this pass)",
|
|
7
|
-
"has_carousel": false,
|
|
8
|
-
"primary_visual_position": "center",
|
|
9
|
-
"background_ornament": "none (flat #000 canvas)",
|
|
10
|
-
"headline_size_px": 43.4,
|
|
11
|
-
"headline_weight": 700,
|
|
12
|
-
"primary_cta_height_px": 62
|
|
13
|
-
},
|
|
14
|
-
"cta": {
|
|
15
|
-
"dominant_shape": "rounded-rectangle (not pill)",
|
|
16
|
-
"primary_radius_px_observed": 12.4,
|
|
17
|
-
"header_cta_radius_px": 8,
|
|
18
|
-
"secondary_style": "ghost / text-link in nav, no outlined variant observed in onboarding surface",
|
|
19
|
-
"color_role": "single brand red across all CTA variants — no secondary CTA color in unauth surface"
|
|
20
|
-
},
|
|
21
|
-
"nav": {
|
|
22
|
-
"structure": "minimal top bar (logo + 시작하기 CTA) on unauth onboarding; authenticated surface presumed to have GNB with --gnb-height: 70px (per CSS token)",
|
|
23
|
-
"approx_item_count_unauth": 2,
|
|
24
|
-
"footer_item_count": 7,
|
|
25
|
-
"footer_items": ["고객센터", "이용약관", "개인정보처리방침", "청소년 보호정책", "법적고지", "이벤트", "공지사항"],
|
|
26
|
-
"has_search": false,
|
|
27
|
-
"has_locale_switch": false
|
|
28
|
-
},
|
|
29
|
-
"page": {
|
|
30
|
-
"viewport_heights_unauth": 6.22,
|
|
31
|
-
"scroll_h_px": 4440,
|
|
32
|
-
"predominant_alignment": "center",
|
|
33
|
-
"image_density_unauth": "none (text-driven onboarding)",
|
|
34
|
-
"image_density_authenticated": "high (presumed — OTT poster grid)"
|
|
35
|
-
},
|
|
36
|
-
"section_rhythm": [
|
|
37
|
-
"top bar (logo + 시작하기)",
|
|
38
|
-
"hero headline + primary CTA",
|
|
39
|
-
"value props (text-based)",
|
|
40
|
-
"footer (정책 / 고객센터 / 이벤트 anchors)"
|
|
41
|
-
],
|
|
42
|
-
"category_taxonomy_signal": {
|
|
43
|
-
"categories_encoded_as_css_vars": ["home", "live", "clip", "vod", "movie", "ad"],
|
|
44
|
-
"note": "Six-category content taxonomy is encoded directly as CSS custom properties (--color-cate-*) on :root — meaning category color is a first-class design system primitive, not a per-page override. Live/sports surfaces have additional geometry tokens (--kbo-player-*, --sports-player-*) suggesting dedicated layouts for KBO baseball and other live sports content."
|
|
45
|
-
},
|
|
46
|
-
"notes": [
|
|
47
|
-
"Unauthenticated visitors are redirected from / to /onboarding — full catalog browse is gated.",
|
|
48
|
-
"Pretendard exclusive: zero non-Pretendard sample observed.",
|
|
49
|
-
"Dark canvas is locked at html level (#000) — no theme-switch token observed.",
|
|
50
|
-
"Card radius pattern is top-corners-only (poster image bleeds to bottom edge), a streaming-platform idiom shared with Disney+ / Netflix / Wavve but distinct in TVING's 16.5292px radius (≈ 1rem * 1.033).",
|
|
51
|
-
"Live-streaming geometry primitives (--live-tab-player-*, --kbo-player-*, --sports-player-*) are first-class design tokens — TVING treats live as a separate surface paradigm from VOD.",
|
|
52
|
-
"Bottom tab present at 4.167rem (≈ 66.7px) per design token — mobile-first chrome.",
|
|
53
|
-
"Emotion CSS-in-JS (`css-*` class hashes) + Tailwind utilities (`--tw-*` token namespace) coexist; semantic shadcn-pattern role vars (`--card`, `--popover`, `--muted`, `--accent`) suggest a shadcn/ui base with Pretendard + brand red overlay."
|
|
54
|
-
]
|
|
55
|
-
}
|