zugzbot 1.2.0 → 1.4.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.
Files changed (786) hide show
  1. package/.opencode/agents/sdd-coder.md +5 -4
  2. package/.opencode/agents/sdd-orchestrator.md +11 -10
  3. package/.opencode/agents/sdd-spec-writer.md +3 -4
  4. package/.opencode/commands/loop.md +1 -1
  5. package/.opencode/plugins/loop-enforcer.ts +0 -1
  6. package/.opencode/plugins/sdd-bridge.ts +1 -1
  7. package/.opencode/rules/sdd-global.md +8 -0
  8. package/.opencode/scripts/lint-charts.js +1 -2
  9. package/.opencode/skills/sdd-foundation-overview/SKILL.md +3 -4
  10. package/.opencode/skills/sdd-methodology/SKILL.md +8 -10
  11. package/.opencode/skills/sdd-quickstart/SKILL.md +5 -9
  12. package/.opencode/skills/shadcn-templates/SKILL.md +93 -32
  13. package/.opencode/templates/nextjs-shadcn/components.json +4 -1
  14. package/.opencode/tools/sdd_bootstrap.ts +21 -0
  15. package/.opencode/tools/sdd_catalog.ts +1040 -0
  16. package/.opencode/tools/sdd_core.ts +8 -6
  17. package/.opencode/tools/sdd_lucide.ts +112 -0
  18. package/README.md +1 -7
  19. package/opencode.json +0 -10
  20. package/package.json +1 -3
  21. package/.opencode/oh-my-design/design-md/11st/.verification.md +0 -37
  22. package/.opencode/oh-my-design/design-md/11st/DESIGN.md +0 -400
  23. package/.opencode/oh-my-design/design-md/17live/DESIGN.md +0 -467
  24. package/.opencode/oh-my-design/design-md/29cm/DESIGN.md +0 -495
  25. package/.opencode/oh-my-design/design-md/29cm/_promo.json +0 -23
  26. package/.opencode/oh-my-design/design-md/29cm/_research.md +0 -103
  27. package/.opencode/oh-my-design/design-md/3o3/.verification.md +0 -73
  28. package/.opencode/oh-my-design/design-md/3o3/DESIGN.md +0 -454
  29. package/.opencode/oh-my-design/design-md/91app/.verification.md +0 -25
  30. package/.opencode/oh-my-design/design-md/91app/DESIGN.md +0 -182
  31. package/.opencode/oh-my-design/design-md/abema/.verification.md +0 -64
  32. package/.opencode/oh-my-design/design-md/abema/DESIGN.md +0 -535
  33. package/.opencode/oh-my-design/design-md/ably/DESIGN.md +0 -646
  34. package/.opencode/oh-my-design/design-md/ably/_promo.json +0 -18
  35. package/.opencode/oh-my-design/design-md/ably/_research.md +0 -120
  36. package/.opencode/oh-my-design/design-md/accupass/.verification.md +0 -66
  37. package/.opencode/oh-my-design/design-md/accupass/DESIGN.md +0 -494
  38. package/.opencode/oh-my-design/design-md/adobe/.verification.md +0 -63
  39. package/.opencode/oh-my-design/design-md/adobe/DESIGN.md +0 -458
  40. package/.opencode/oh-my-design/design-md/airbnb/.verification.md +0 -143
  41. package/.opencode/oh-my-design/design-md/airbnb/DESIGN.md +0 -639
  42. package/.opencode/oh-my-design/design-md/airbnb/README.md +0 -23
  43. package/.opencode/oh-my-design/design-md/airbnb/preview-dark.html +0 -234
  44. package/.opencode/oh-my-design/design-md/airbnb/preview.html +0 -233
  45. package/.opencode/oh-my-design/design-md/airtable/.verification.md +0 -136
  46. package/.opencode/oh-my-design/design-md/airtable/DESIGN.md +0 -314
  47. package/.opencode/oh-my-design/design-md/airtable/README.md +0 -23
  48. package/.opencode/oh-my-design/design-md/airtable/preview-dark.html +0 -165
  49. package/.opencode/oh-my-design/design-md/airtable/preview.html +0 -164
  50. package/.opencode/oh-my-design/design-md/alipay/DESIGN.md +0 -506
  51. package/.opencode/oh-my-design/design-md/amazingtalker/.verification.md +0 -38
  52. package/.opencode/oh-my-design/design-md/amazingtalker/DESIGN.md +0 -434
  53. package/.opencode/oh-my-design/design-md/appier/DESIGN.md +0 -465
  54. package/.opencode/oh-my-design/design-md/apple/.verification.md +0 -162
  55. package/.opencode/oh-my-design/design-md/apple/DESIGN.md +0 -613
  56. package/.opencode/oh-my-design/design-md/apple/README.md +0 -24
  57. package/.opencode/oh-my-design/design-md/apple/preview-dark.html +0 -420
  58. package/.opencode/oh-my-design/design-md/apple/preview.html +0 -414
  59. package/.opencode/oh-my-design/design-md/baemin/.verification.md +0 -132
  60. package/.opencode/oh-my-design/design-md/baemin/DESIGN.md +0 -578
  61. package/.opencode/oh-my-design/design-md/baemin/README.md +0 -19
  62. package/.opencode/oh-my-design/design-md/baemin/_research.md +0 -84
  63. package/.opencode/oh-my-design/design-md/banksalad/DESIGN.md +0 -688
  64. package/.opencode/oh-my-design/design-md/banksalad/_promo.json +0 -29
  65. package/.opencode/oh-my-design/design-md/banksalad/_research.md +0 -190
  66. package/.opencode/oh-my-design/design-md/bilibili/DESIGN.md +0 -471
  67. package/.opencode/oh-my-design/design-md/bithumb/.verification.md +0 -31
  68. package/.opencode/oh-my-design/design-md/bithumb/DESIGN.md +0 -208
  69. package/.opencode/oh-my-design/design-md/bmw/.verification.md +0 -114
  70. package/.opencode/oh-my-design/design-md/bmw/DESIGN.md +0 -360
  71. package/.opencode/oh-my-design/design-md/bmw/README.md +0 -23
  72. package/.opencode/oh-my-design/design-md/bmw/preview-dark.html +0 -211
  73. package/.opencode/oh-my-design/design-md/bmw/preview.html +0 -210
  74. package/.opencode/oh-my-design/design-md/brandi/.verification.md +0 -29
  75. package/.opencode/oh-my-design/design-md/brandi/DESIGN.md +0 -414
  76. package/.opencode/oh-my-design/design-md/bunjang/DESIGN.md +0 -374
  77. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/.live-inspect-proof.json +0 -260
  78. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/fonts.json +0 -33
  79. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/logo-icon.svg +0 -10
  80. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/structure.json +0 -131
  81. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/tokens.json +0 -147
  82. package/.opencode/oh-my-design/design-md/cakeresume/.verification.md +0 -25
  83. package/.opencode/oh-my-design/design-md/cakeresume/DESIGN.md +0 -191
  84. package/.opencode/oh-my-design/design-md/cal/.verification.md +0 -145
  85. package/.opencode/oh-my-design/design-md/cal/DESIGN.md +0 -481
  86. package/.opencode/oh-my-design/design-md/cal/README.md +0 -23
  87. package/.opencode/oh-my-design/design-md/cal/preview-dark.html +0 -449
  88. package/.opencode/oh-my-design/design-md/cal/preview.html +0 -575
  89. package/.opencode/oh-my-design/design-md/catchtable/DESIGN.md +0 -341
  90. package/.opencode/oh-my-design/design-md/catchtable/_research.md +0 -54
  91. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-proof.json +0 -204
  92. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-raw.json +0 -22
  93. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/fonts.json +0 -21
  94. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/structure.json +0 -42
  95. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/tokens.json +0 -95
  96. package/.opencode/oh-my-design/design-md/cathay/.verification.md +0 -44
  97. package/.opencode/oh-my-design/design-md/cathay/DESIGN.md +0 -432
  98. package/.opencode/oh-my-design/design-md/channeltalk/DESIGN.md +0 -422
  99. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/.live-inspect-proof.json +0 -320
  100. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/fonts.json +0 -53
  101. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/structure.json +0 -47
  102. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/tokens.json +0 -78
  103. package/.opencode/oh-my-design/design-md/class101/DESIGN.md +0 -484
  104. package/.opencode/oh-my-design/design-md/classting/.verification.md +0 -32
  105. package/.opencode/oh-my-design/design-md/classting/DESIGN.md +0 -292
  106. package/.opencode/oh-my-design/design-md/classum/DESIGN.md +0 -279
  107. package/.opencode/oh-my-design/design-md/classum/assets/_reference/.live-inspect-proof.json +0 -72
  108. package/.opencode/oh-my-design/design-md/classum/assets/_reference/fonts.json +0 -20
  109. package/.opencode/oh-my-design/design-md/classum/assets/_reference/structure.json +0 -21
  110. package/.opencode/oh-my-design/design-md/classum/assets/_reference/tokens.json +0 -56
  111. package/.opencode/oh-my-design/design-md/claude/.verification.md +0 -106
  112. package/.opencode/oh-my-design/design-md/claude/DESIGN.md +0 -561
  113. package/.opencode/oh-my-design/design-md/claude/README.md +0 -24
  114. package/.opencode/oh-my-design/design-md/claude/preview-dark.html +0 -803
  115. package/.opencode/oh-my-design/design-md/claude/preview.html +0 -826
  116. package/.opencode/oh-my-design/design-md/clay/.verification.md +0 -129
  117. package/.opencode/oh-my-design/design-md/clay/DESIGN.md +0 -454
  118. package/.opencode/oh-my-design/design-md/clay/README.md +0 -23
  119. package/.opencode/oh-my-design/design-md/clay/preview-dark.html +0 -316
  120. package/.opencode/oh-my-design/design-md/clay/preview.html +0 -315
  121. package/.opencode/oh-my-design/design-md/clickhouse/.verification.md +0 -132
  122. package/.opencode/oh-my-design/design-md/clickhouse/DESIGN.md +0 -424
  123. package/.opencode/oh-my-design/design-md/clickhouse/README.md +0 -24
  124. package/.opencode/oh-my-design/design-md/clickhouse/preview-dark.html +0 -834
  125. package/.opencode/oh-my-design/design-md/clickhouse/preview.html +0 -786
  126. package/.opencode/oh-my-design/design-md/cloudflare/.verification.md +0 -21
  127. package/.opencode/oh-my-design/design-md/cloudflare/DESIGN.md +0 -637
  128. package/.opencode/oh-my-design/design-md/cohere/.verification.md +0 -136
  129. package/.opencode/oh-my-design/design-md/cohere/DESIGN.md +0 -409
  130. package/.opencode/oh-my-design/design-md/cohere/README.md +0 -24
  131. package/.opencode/oh-my-design/design-md/cohere/preview-dark.html +0 -803
  132. package/.opencode/oh-my-design/design-md/cohere/preview.html +0 -807
  133. package/.opencode/oh-my-design/design-md/coinbase/.verification.md +0 -116
  134. package/.opencode/oh-my-design/design-md/coinbase/DESIGN.md +0 -353
  135. package/.opencode/oh-my-design/design-md/coinbase/README.md +0 -23
  136. package/.opencode/oh-my-design/design-md/coinbase/preview-dark.html +0 -164
  137. package/.opencode/oh-my-design/design-md/coinbase/preview.html +0 -163
  138. package/.opencode/oh-my-design/design-md/coinone/.verification.md +0 -38
  139. package/.opencode/oh-my-design/design-md/coinone/DESIGN.md +0 -257
  140. package/.opencode/oh-my-design/design-md/composio/.verification.md +0 -143
  141. package/.opencode/oh-my-design/design-md/composio/DESIGN.md +0 -441
  142. package/.opencode/oh-my-design/design-md/composio/README.md +0 -24
  143. package/.opencode/oh-my-design/design-md/composio/preview-dark.html +0 -958
  144. package/.opencode/oh-my-design/design-md/composio/preview.html +0 -933
  145. package/.opencode/oh-my-design/design-md/cookpad/DESIGN.md +0 -394
  146. package/.opencode/oh-my-design/design-md/coupang/.verification.md +0 -141
  147. package/.opencode/oh-my-design/design-md/coupang/DESIGN.md +0 -557
  148. package/.opencode/oh-my-design/design-md/cursor/.verification.md +0 -141
  149. package/.opencode/oh-my-design/design-md/cursor/DESIGN.md +0 -460
  150. package/.opencode/oh-my-design/design-md/cursor/README.md +0 -24
  151. package/.opencode/oh-my-design/design-md/cursor/preview-dark.html +0 -393
  152. package/.opencode/oh-my-design/design-md/cursor/preview.html +0 -383
  153. package/.opencode/oh-my-design/design-md/dabang/DESIGN.md +0 -267
  154. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/.live-inspect-proof.json +0 -145
  155. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/fonts.json +0 -22
  156. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture-map.json +0 -718
  157. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture.json +0 -1125
  158. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/structure.json +0 -53
  159. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/tokens.json +0 -130
  160. package/.opencode/oh-my-design/design-md/danawa/.verification.md +0 -60
  161. package/.opencode/oh-my-design/design-md/danawa/DESIGN.md +0 -477
  162. package/.opencode/oh-my-design/design-md/dcard/.verification.md +0 -118
  163. package/.opencode/oh-my-design/design-md/dcard/DESIGN.md +0 -633
  164. package/.opencode/oh-my-design/design-md/dcard/README.md +0 -12
  165. package/.opencode/oh-my-design/design-md/dcard/_research/forum-1440px.png +0 -0
  166. package/.opencode/oh-my-design/design-md/dcard/_research.md +0 -133
  167. package/.opencode/oh-my-design/design-md/dell/.verification.md +0 -21
  168. package/.opencode/oh-my-design/design-md/dell/DESIGN.md +0 -636
  169. package/.opencode/oh-my-design/design-md/devsisters/.verification.md +0 -32
  170. package/.opencode/oh-my-design/design-md/devsisters/DESIGN.md +0 -282
  171. package/.opencode/oh-my-design/design-md/discord/.verification.md +0 -21
  172. package/.opencode/oh-my-design/design-md/discord/DESIGN.md +0 -604
  173. package/.opencode/oh-my-design/design-md/dji/DESIGN.md +0 -454
  174. package/.opencode/oh-my-design/design-md/drnow/.verification.md +0 -41
  175. package/.opencode/oh-my-design/design-md/drnow/DESIGN.md +0 -383
  176. package/.opencode/oh-my-design/design-md/dropbox/.verification.md +0 -61
  177. package/.opencode/oh-my-design/design-md/dropbox/DESIGN.md +0 -445
  178. package/.opencode/oh-my-design/design-md/duolingo/.verification.md +0 -20
  179. package/.opencode/oh-my-design/design-md/duolingo/DESIGN.md +0 -563
  180. package/.opencode/oh-my-design/design-md/elevenlabs/.verification.md +0 -128
  181. package/.opencode/oh-my-design/design-md/elevenlabs/DESIGN.md +0 -415
  182. package/.opencode/oh-my-design/design-md/elevenlabs/README.md +0 -23
  183. package/.opencode/oh-my-design/design-md/elevenlabs/preview-dark.html +0 -252
  184. package/.opencode/oh-my-design/design-md/elevenlabs/preview.html +0 -251
  185. package/.opencode/oh-my-design/design-md/expo/.verification.md +0 -141
  186. package/.opencode/oh-my-design/design-md/expo/DESIGN.md +0 -412
  187. package/.opencode/oh-my-design/design-md/expo/README.md +0 -24
  188. package/.opencode/oh-my-design/design-md/expo/preview-dark.html +0 -533
  189. package/.opencode/oh-my-design/design-md/expo/preview.html +0 -533
  190. package/.opencode/oh-my-design/design-md/fastcampus/DESIGN.md +0 -529
  191. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/.live-inspect-proof.json +0 -950
  192. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/fonts.json +0 -14
  193. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/structure.json +0 -30
  194. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/tokens.json +0 -109
  195. package/.opencode/oh-my-design/design-md/ferrari/.verification.md +0 -119
  196. package/.opencode/oh-my-design/design-md/ferrari/DESIGN.md +0 -447
  197. package/.opencode/oh-my-design/design-md/ferrari/README.md +0 -23
  198. package/.opencode/oh-my-design/design-md/ferrari/preview-dark.html +0 -1162
  199. package/.opencode/oh-my-design/design-md/ferrari/preview.html +0 -1122
  200. package/.opencode/oh-my-design/design-md/figma/.verification.md +0 -206
  201. package/.opencode/oh-my-design/design-md/figma/DESIGN.md +0 -534
  202. package/.opencode/oh-my-design/design-md/figma/README.md +0 -24
  203. package/.opencode/oh-my-design/design-md/figma/preview-dark.html +0 -822
  204. package/.opencode/oh-my-design/design-md/figma/preview.html +0 -832
  205. package/.opencode/oh-my-design/design-md/finda/.verification.md +0 -33
  206. package/.opencode/oh-my-design/design-md/finda/DESIGN.md +0 -413
  207. package/.opencode/oh-my-design/design-md/firstory/.verification.md +0 -70
  208. package/.opencode/oh-my-design/design-md/firstory/DESIGN.md +0 -487
  209. package/.opencode/oh-my-design/design-md/flex/DESIGN.md +0 -356
  210. package/.opencode/oh-my-design/design-md/flex/_research.md +0 -49
  211. package/.opencode/oh-my-design/design-md/flex/assets/_reference/.live-inspect-proof.json +0 -192
  212. package/.opencode/oh-my-design/design-md/flex/assets/_reference/.raw-inspect.json +0 -873
  213. package/.opencode/oh-my-design/design-md/flex/assets/_reference/fonts.json +0 -17
  214. package/.opencode/oh-my-design/design-md/flex/assets/_reference/structure.json +0 -58
  215. package/.opencode/oh-my-design/design-md/flex/assets/_reference/tokens.json +0 -75
  216. package/.opencode/oh-my-design/design-md/flo/.verification.md +0 -33
  217. package/.opencode/oh-my-design/design-md/flo/DESIGN.md +0 -349
  218. package/.opencode/oh-my-design/design-md/framer/.verification.md +0 -147
  219. package/.opencode/oh-my-design/design-md/framer/DESIGN.md +0 -431
  220. package/.opencode/oh-my-design/design-md/framer/README.md +0 -23
  221. package/.opencode/oh-my-design/design-md/framer/preview-dark.html +0 -902
  222. package/.opencode/oh-my-design/design-md/framer/preview.html +0 -883
  223. package/.opencode/oh-my-design/design-md/freee/.verification.md +0 -145
  224. package/.opencode/oh-my-design/design-md/freee/DESIGN.md +0 -620
  225. package/.opencode/oh-my-design/design-md/freee/README.md +0 -12
  226. package/.opencode/oh-my-design/design-md/freee/_research/vibes-storybook-1440px.png +0 -0
  227. package/.opencode/oh-my-design/design-md/freee/_research.md +0 -116
  228. package/.opencode/oh-my-design/design-md/fugle/.verification.md +0 -40
  229. package/.opencode/oh-my-design/design-md/fugle/DESIGN.md +0 -290
  230. package/.opencode/oh-my-design/design-md/funnow/.verification.md +0 -62
  231. package/.opencode/oh-my-design/design-md/funnow/DESIGN.md +0 -431
  232. package/.opencode/oh-my-design/design-md/gangnamunni/DESIGN.md +0 -677
  233. package/.opencode/oh-my-design/design-md/gangnamunni/_promo.json +0 -26
  234. package/.opencode/oh-my-design/design-md/gangnamunni/_research.md +0 -113
  235. package/.opencode/oh-my-design/design-md/genie/.verification.md +0 -29
  236. package/.opencode/oh-my-design/design-md/genie/DESIGN.md +0 -415
  237. package/.opencode/oh-my-design/design-md/github/.verification.md +0 -21
  238. package/.opencode/oh-my-design/design-md/github/DESIGN.md +0 -727
  239. package/.opencode/oh-my-design/design-md/gmarket/DESIGN.md +0 -534
  240. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/.live-inspect-proof.json +0 -217
  241. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/fonts.json +0 -41
  242. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-bestsellers.json +0 -1929
  243. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-home.json +0 -3675
  244. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/structure.json +0 -65
  245. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/tokens.json +0 -210
  246. package/.opencode/oh-my-design/design-md/gogolook/.verification.md +0 -31
  247. package/.opencode/oh-my-design/design-md/gogolook/DESIGN.md +0 -155
  248. package/.opencode/oh-my-design/design-md/gogoro/DESIGN.md +0 -441
  249. package/.opencode/oh-my-design/design-md/google/.verification.md +0 -61
  250. package/.opencode/oh-my-design/design-md/google/DESIGN.md +0 -499
  251. package/.opencode/oh-my-design/design-md/greenvines/.verification.md +0 -72
  252. package/.opencode/oh-my-design/design-md/greenvines/DESIGN.md +0 -454
  253. package/.opencode/oh-my-design/design-md/greeting/.verification.md +0 -64
  254. package/.opencode/oh-my-design/design-md/greeting/DESIGN.md +0 -462
  255. package/.opencode/oh-my-design/design-md/grip/.verification.md +0 -36
  256. package/.opencode/oh-my-design/design-md/grip/DESIGN.md +0 -289
  257. package/.opencode/oh-my-design/design-md/hahow/.verification.md +0 -31
  258. package/.opencode/oh-my-design/design-md/hahow/DESIGN.md +0 -184
  259. package/.opencode/oh-my-design/design-md/hashicorp/.verification.md +0 -142
  260. package/.opencode/oh-my-design/design-md/hashicorp/DESIGN.md +0 -411
  261. package/.opencode/oh-my-design/design-md/hashicorp/README.md +0 -24
  262. package/.opencode/oh-my-design/design-md/hashicorp/preview-dark.html +0 -1202
  263. package/.opencode/oh-my-design/design-md/hashicorp/preview.html +0 -1193
  264. package/.opencode/oh-my-design/design-md/hogangnono/.verification.md +0 -33
  265. package/.opencode/oh-my-design/design-md/hogangnono/DESIGN.md +0 -349
  266. package/.opencode/oh-my-design/design-md/hp/.verification.md +0 -21
  267. package/.opencode/oh-my-design/design-md/hp/DESIGN.md +0 -563
  268. package/.opencode/oh-my-design/design-md/hyperconnect/.verification.md +0 -40
  269. package/.opencode/oh-my-design/design-md/hyperconnect/DESIGN.md +0 -393
  270. package/.opencode/oh-my-design/design-md/hyundaicard/.verification.md +0 -25
  271. package/.opencode/oh-my-design/design-md/hyundaicard/DESIGN.md +0 -201
  272. package/.opencode/oh-my-design/design-md/ibm/.verification.md +0 -102
  273. package/.opencode/oh-my-design/design-md/ibm/DESIGN.md +0 -464
  274. package/.opencode/oh-my-design/design-md/ibm/README.md +0 -24
  275. package/.opencode/oh-my-design/design-md/ibm/preview-dark.html +0 -443
  276. package/.opencode/oh-my-design/design-md/ibm/preview.html +0 -428
  277. package/.opencode/oh-my-design/design-md/ichef/DESIGN.md +0 -455
  278. package/.opencode/oh-my-design/design-md/ikala/.verification.md +0 -35
  279. package/.opencode/oh-my-design/design-md/ikala/DESIGN.md +0 -400
  280. package/.opencode/oh-my-design/design-md/imweb/.verification.md +0 -61
  281. package/.opencode/oh-my-design/design-md/imweb/DESIGN.md +0 -460
  282. package/.opencode/oh-my-design/design-md/inflearn/DESIGN.md +0 -453
  283. package/.opencode/oh-my-design/design-md/inflearn/_promo.json +0 -29
  284. package/.opencode/oh-my-design/design-md/inflearn/_research.md +0 -85
  285. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof-courses.json +0 -679
  286. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof.json +0 -448
  287. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/fonts.json +0 -41
  288. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/structure.json +0 -110
  289. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/tokens.json +0 -54
  290. package/.opencode/oh-my-design/design-md/intercom/.verification.md +0 -144
  291. package/.opencode/oh-my-design/design-md/intercom/DESIGN.md +0 -271
  292. package/.opencode/oh-my-design/design-md/intercom/README.md +0 -23
  293. package/.opencode/oh-my-design/design-md/intercom/preview-dark.html +0 -185
  294. package/.opencode/oh-my-design/design-md/intercom/preview.html +0 -184
  295. package/.opencode/oh-my-design/design-md/jandi/.verification.md +0 -26
  296. package/.opencode/oh-my-design/design-md/jandi/DESIGN.md +0 -382
  297. package/.opencode/oh-my-design/design-md/jkopay/.verification.md +0 -32
  298. package/.opencode/oh-my-design/design-md/jkopay/DESIGN.md +0 -283
  299. package/.opencode/oh-my-design/design-md/jobkorea/.verification.md +0 -30
  300. package/.opencode/oh-my-design/design-md/jobkorea/DESIGN.md +0 -349
  301. package/.opencode/oh-my-design/design-md/jumpit/DESIGN.md +0 -403
  302. package/.opencode/oh-my-design/design-md/jumpit/_research.md +0 -119
  303. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/.live-inspect-proof.json +0 -182
  304. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/fonts.json +0 -20
  305. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/structure.json +0 -66
  306. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/tokens.json +0 -108
  307. package/.opencode/oh-my-design/design-md/kakao/.verification.md +0 -137
  308. package/.opencode/oh-my-design/design-md/kakao/DESIGN.md +0 -568
  309. package/.opencode/oh-my-design/design-md/kakao/README.md +0 -18
  310. package/.opencode/oh-my-design/design-md/kakao/_research.md +0 -98
  311. package/.opencode/oh-my-design/design-md/kakaobank/.verification.md +0 -133
  312. package/.opencode/oh-my-design/design-md/kakaobank/DESIGN.md +0 -602
  313. package/.opencode/oh-my-design/design-md/kakaopay/DESIGN.md +0 -603
  314. package/.opencode/oh-my-design/design-md/kakaopay/_promo.json +0 -22
  315. package/.opencode/oh-my-design/design-md/kakaopay/_research.md +0 -84
  316. package/.opencode/oh-my-design/design-md/kakaot/DESIGN.md +0 -507
  317. package/.opencode/oh-my-design/design-md/karrot/.verification.md +0 -143
  318. package/.opencode/oh-my-design/design-md/karrot/DESIGN.md +0 -494
  319. package/.opencode/oh-my-design/design-md/karrot/README.md +0 -18
  320. package/.opencode/oh-my-design/design-md/karrot/_research.md +0 -57
  321. package/.opencode/oh-my-design/design-md/kbank/DESIGN.md +0 -252
  322. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-proof.json +0 -215
  323. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-raw.json +0 -1
  324. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/fonts.json +0 -20
  325. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/structure.json +0 -151
  326. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/tokens.json +0 -101
  327. package/.opencode/oh-my-design/design-md/kdan/.verification.md +0 -30
  328. package/.opencode/oh-my-design/design-md/kdan/DESIGN.md +0 -193
  329. package/.opencode/oh-my-design/design-md/kintone/.verification.md +0 -21
  330. package/.opencode/oh-my-design/design-md/kintone/DESIGN.md +0 -586
  331. package/.opencode/oh-my-design/design-md/kkbox/.verification.md +0 -27
  332. package/.opencode/oh-my-design/design-md/kkbox/DESIGN.md +0 -136
  333. package/.opencode/oh-my-design/design-md/kkday/DESIGN.md +0 -470
  334. package/.opencode/oh-my-design/design-md/kmong/.verification.md +0 -30
  335. package/.opencode/oh-my-design/design-md/kmong/DESIGN.md +0 -427
  336. package/.opencode/oh-my-design/design-md/krafton/.verification.md +0 -38
  337. package/.opencode/oh-my-design/design-md/krafton/DESIGN.md +0 -267
  338. package/.opencode/oh-my-design/design-md/kraken/.verification.md +0 -143
  339. package/.opencode/oh-my-design/design-md/kraken/DESIGN.md +0 -277
  340. package/.opencode/oh-my-design/design-md/kraken/README.md +0 -23
  341. package/.opencode/oh-my-design/design-md/kraken/preview-dark.html +0 -169
  342. package/.opencode/oh-my-design/design-md/kraken/preview.html +0 -168
  343. package/.opencode/oh-my-design/design-md/krds/.verification.md +0 -373
  344. package/.opencode/oh-my-design/design-md/krds/DESIGN.md +0 -1060
  345. package/.opencode/oh-my-design/design-md/kream/DESIGN.md +0 -432
  346. package/.opencode/oh-my-design/design-md/kream/assets/_reference/.live-inspect-proof.json +0 -289
  347. package/.opencode/oh-my-design/design-md/kream/assets/_reference/fonts.json +0 -26
  348. package/.opencode/oh-my-design/design-md/kream/assets/_reference/structure.json +0 -56
  349. package/.opencode/oh-my-design/design-md/kream/assets/_reference/tokens.json +0 -154
  350. package/.opencode/oh-my-design/design-md/kurly/.verification.md +0 -126
  351. package/.opencode/oh-my-design/design-md/kurly/DESIGN.md +0 -620
  352. package/.opencode/oh-my-design/design-md/laftel/.verification.md +0 -39
  353. package/.opencode/oh-my-design/design-md/laftel/DESIGN.md +0 -293
  354. package/.opencode/oh-my-design/design-md/lamborghini/.verification.md +0 -127
  355. package/.opencode/oh-my-design/design-md/lamborghini/DESIGN.md +0 -430
  356. package/.opencode/oh-my-design/design-md/lamborghini/README.md +0 -23
  357. package/.opencode/oh-my-design/design-md/lamborghini/preview-dark.html +0 -303
  358. package/.opencode/oh-my-design/design-md/lamborghini/preview.html +0 -381
  359. package/.opencode/oh-my-design/design-md/laundrygo/.verification.md +0 -60
  360. package/.opencode/oh-my-design/design-md/laundrygo/DESIGN.md +0 -434
  361. package/.opencode/oh-my-design/design-md/layerx/.verification.md +0 -21
  362. package/.opencode/oh-my-design/design-md/layerx/DESIGN.md +0 -615
  363. package/.opencode/oh-my-design/design-md/lezhin/.verification.md +0 -47
  364. package/.opencode/oh-my-design/design-md/lezhin/DESIGN.md +0 -348
  365. package/.opencode/oh-my-design/design-md/line/.verification.md +0 -137
  366. package/.opencode/oh-my-design/design-md/line/DESIGN.md +0 -467
  367. package/.opencode/oh-my-design/design-md/line/README.md +0 -12
  368. package/.opencode/oh-my-design/design-md/line/_research/home-1440px.png +0 -0
  369. package/.opencode/oh-my-design/design-md/line/_research.md +0 -65
  370. package/.opencode/oh-my-design/design-md/linear.app/.verification.md +0 -143
  371. package/.opencode/oh-my-design/design-md/linear.app/DESIGN.md +0 -642
  372. package/.opencode/oh-my-design/design-md/linear.app/README.md +0 -24
  373. package/.opencode/oh-my-design/design-md/linear.app/preview-dark.html +0 -383
  374. package/.opencode/oh-my-design/design-md/linear.app/preview.html +0 -373
  375. package/.opencode/oh-my-design/design-md/loom/.verification.md +0 -31
  376. package/.opencode/oh-my-design/design-md/loom/DESIGN.md +0 -396
  377. package/.opencode/oh-my-design/design-md/lovable/.verification.md +0 -154
  378. package/.opencode/oh-my-design/design-md/lovable/DESIGN.md +0 -423
  379. package/.opencode/oh-my-design/design-md/lovable/README.md +0 -24
  380. package/.opencode/oh-my-design/design-md/lovable/preview-dark.html +0 -349
  381. package/.opencode/oh-my-design/design-md/lovable/preview.html +0 -348
  382. package/.opencode/oh-my-design/design-md/lunit/DESIGN.md +0 -296
  383. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/.live-inspect-proof.json +0 -249
  384. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/fonts.json +0 -24
  385. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/structure.json +0 -162
  386. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/tokens.json +0 -115
  387. package/.opencode/oh-my-design/design-md/mastercard/.verification.md +0 -19
  388. package/.opencode/oh-my-design/design-md/mastercard/DESIGN.md +0 -587
  389. package/.opencode/oh-my-design/design-md/meituan/DESIGN.md +0 -466
  390. package/.opencode/oh-my-design/design-md/melon/.verification.md +0 -27
  391. package/.opencode/oh-my-design/design-md/melon/DESIGN.md +0 -179
  392. package/.opencode/oh-my-design/design-md/mercari/.verification.md +0 -155
  393. package/.opencode/oh-my-design/design-md/mercari/DESIGN.md +0 -514
  394. package/.opencode/oh-my-design/design-md/mercari/README.md +0 -12
  395. package/.opencode/oh-my-design/design-md/mercari/_research/home-1440px.png +0 -0
  396. package/.opencode/oh-my-design/design-md/mercari/_research.md +0 -137
  397. package/.opencode/oh-my-design/design-md/mercury/.verification.md +0 -21
  398. package/.opencode/oh-my-design/design-md/mercury/DESIGN.md +0 -589
  399. package/.opencode/oh-my-design/design-md/meta/.verification.md +0 -21
  400. package/.opencode/oh-my-design/design-md/meta/DESIGN.md +0 -615
  401. package/.opencode/oh-my-design/design-md/microsoft/.verification.md +0 -62
  402. package/.opencode/oh-my-design/design-md/microsoft/DESIGN.md +0 -508
  403. package/.opencode/oh-my-design/design-md/millie/DESIGN.md +0 -584
  404. package/.opencode/oh-my-design/design-md/minimax/.verification.md +0 -135
  405. package/.opencode/oh-my-design/design-md/minimax/DESIGN.md +0 -396
  406. package/.opencode/oh-my-design/design-md/minimax/README.md +0 -24
  407. package/.opencode/oh-my-design/design-md/minimax/preview-dark.html +0 -1262
  408. package/.opencode/oh-my-design/design-md/minimax/preview.html +0 -1248
  409. package/.opencode/oh-my-design/design-md/mintlify/.verification.md +0 -160
  410. package/.opencode/oh-my-design/design-md/mintlify/DESIGN.md +0 -472
  411. package/.opencode/oh-my-design/design-md/mintlify/README.md +0 -24
  412. package/.opencode/oh-my-design/design-md/mintlify/preview-dark.html +0 -409
  413. package/.opencode/oh-my-design/design-md/mintlify/preview.html +0 -398
  414. package/.opencode/oh-my-design/design-md/miricanvas/.verification.md +0 -61
  415. package/.opencode/oh-my-design/design-md/miricanvas/DESIGN.md +0 -464
  416. package/.opencode/oh-my-design/design-md/miro/.verification.md +0 -138
  417. package/.opencode/oh-my-design/design-md/miro/DESIGN.md +0 -319
  418. package/.opencode/oh-my-design/design-md/miro/README.md +0 -23
  419. package/.opencode/oh-my-design/design-md/miro/preview-dark.html +0 -174
  420. package/.opencode/oh-my-design/design-md/miro/preview.html +0 -173
  421. package/.opencode/oh-my-design/design-md/mistral.ai/.verification.md +0 -146
  422. package/.opencode/oh-my-design/design-md/mistral.ai/DESIGN.md +0 -390
  423. package/.opencode/oh-my-design/design-md/mistral.ai/README.md +0 -24
  424. package/.opencode/oh-my-design/design-md/mistral.ai/preview-dark.html +0 -806
  425. package/.opencode/oh-my-design/design-md/mistral.ai/preview.html +0 -805
  426. package/.opencode/oh-my-design/design-md/modusign/.verification.md +0 -58
  427. package/.opencode/oh-my-design/design-md/modusign/DESIGN.md +0 -524
  428. package/.opencode/oh-my-design/design-md/momoshop/.verification.md +0 -36
  429. package/.opencode/oh-my-design/design-md/momoshop/DESIGN.md +0 -322
  430. package/.opencode/oh-my-design/design-md/money-forward/DESIGN.md +0 -443
  431. package/.opencode/oh-my-design/design-md/mongodb/.verification.md +0 -145
  432. package/.opencode/oh-my-design/design-md/mongodb/DESIGN.md +0 -401
  433. package/.opencode/oh-my-design/design-md/mongodb/README.md +0 -23
  434. package/.opencode/oh-my-design/design-md/mongodb/preview-dark.html +0 -260
  435. package/.opencode/oh-my-design/design-md/mongodb/preview.html +0 -259
  436. package/.opencode/oh-my-design/design-md/muji/.verification.md +0 -20
  437. package/.opencode/oh-my-design/design-md/muji/DESIGN.md +0 -605
  438. package/.opencode/oh-my-design/design-md/musinsa/.verification.md +0 -59
  439. package/.opencode/oh-my-design/design-md/musinsa/DESIGN.md +0 -593
  440. package/.opencode/oh-my-design/design-md/mustit/.verification.md +0 -37
  441. package/.opencode/oh-my-design/design-md/mustit/DESIGN.md +0 -328
  442. package/.opencode/oh-my-design/design-md/myrealtrip/DESIGN.md +0 -494
  443. package/.opencode/oh-my-design/design-md/naver/.verification.md +0 -134
  444. package/.opencode/oh-my-design/design-md/naver/DESIGN.md +0 -582
  445. package/.opencode/oh-my-design/design-md/naverwebtoon/DESIGN.md +0 -477
  446. package/.opencode/oh-my-design/design-md/netflix/.verification.md +0 -21
  447. package/.opencode/oh-my-design/design-md/netflix/DESIGN.md +0 -572
  448. package/.opencode/oh-my-design/design-md/nexon/.verification.md +0 -27
  449. package/.opencode/oh-my-design/design-md/nexon/DESIGN.md +0 -389
  450. package/.opencode/oh-my-design/design-md/nhncloud/.verification.md +0 -23
  451. package/.opencode/oh-my-design/design-md/nhncloud/DESIGN.md +0 -207
  452. package/.opencode/oh-my-design/design-md/nike/.verification.md +0 -21
  453. package/.opencode/oh-my-design/design-md/nike/DESIGN.md +0 -588
  454. package/.opencode/oh-my-design/design-md/note/DESIGN.md +0 -346
  455. package/.opencode/oh-my-design/design-md/notion/.verification.md +0 -141
  456. package/.opencode/oh-my-design/design-md/notion/DESIGN.md +0 -557
  457. package/.opencode/oh-my-design/design-md/notion/README.md +0 -24
  458. package/.opencode/oh-my-design/design-md/notion/preview-dark.html +0 -372
  459. package/.opencode/oh-my-design/design-md/notion/preview.html +0 -364
  460. package/.opencode/oh-my-design/design-md/nvidia/.verification.md +0 -127
  461. package/.opencode/oh-my-design/design-md/nvidia/DESIGN.md +0 -550
  462. package/.opencode/oh-my-design/design-md/nvidia/README.md +0 -24
  463. package/.opencode/oh-my-design/design-md/nvidia/_research.md +0 -68
  464. package/.opencode/oh-my-design/design-md/nvidia/preview-dark.html +0 -374
  465. package/.opencode/oh-my-design/design-md/nvidia/preview.html +0 -366
  466. package/.opencode/oh-my-design/design-md/ohouse/.verification.md +0 -87
  467. package/.opencode/oh-my-design/design-md/ohouse/DESIGN.md +0 -635
  468. package/.opencode/oh-my-design/design-md/oliveyoung/DESIGN.md +0 -407
  469. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/.live-inspect-proof.json +0 -158
  470. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_best_capture.json +0 -644
  471. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_detail_capture.json +0 -447
  472. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main.html +0 -419
  473. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main_capture.json +0 -1126
  474. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_search_capture.json +0 -912
  475. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/fonts.json +0 -20
  476. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/structure.json +0 -91
  477. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/tokens.json +0 -79
  478. package/.opencode/oh-my-design/design-md/ollama/.verification.md +0 -138
  479. package/.opencode/oh-my-design/design-md/ollama/DESIGN.md +0 -393
  480. package/.opencode/oh-my-design/design-md/ollama/README.md +0 -24
  481. package/.opencode/oh-my-design/design-md/ollama/preview-dark.html +0 -678
  482. package/.opencode/oh-my-design/design-md/ollama/preview.html +0 -678
  483. package/.opencode/oh-my-design/design-md/omnichat/.verification.md +0 -74
  484. package/.opencode/oh-my-design/design-md/omnichat/DESIGN.md +0 -499
  485. package/.opencode/oh-my-design/design-md/openai/.verification.md +0 -21
  486. package/.opencode/oh-my-design/design-md/openai/DESIGN.md +0 -641
  487. package/.opencode/oh-my-design/design-md/opencode.ai/.verification.md +0 -136
  488. package/.opencode/oh-my-design/design-md/opencode.ai/DESIGN.md +0 -425
  489. package/.opencode/oh-my-design/design-md/opencode.ai/README.md +0 -24
  490. package/.opencode/oh-my-design/design-md/opencode.ai/preview-dark.html +0 -366
  491. package/.opencode/oh-my-design/design-md/opencode.ai/preview.html +0 -357
  492. package/.opencode/oh-my-design/design-md/payco/.verification.md +0 -28
  493. package/.opencode/oh-my-design/design-md/payco/DESIGN.md +0 -267
  494. package/.opencode/oh-my-design/design-md/paypay/.verification.md +0 -21
  495. package/.opencode/oh-my-design/design-md/paypay/DESIGN.md +0 -656
  496. package/.opencode/oh-my-design/design-md/pchome/.verification.md +0 -38
  497. package/.opencode/oh-my-design/design-md/pchome/DESIGN.md +0 -439
  498. package/.opencode/oh-my-design/design-md/perplexity/.verification.md +0 -21
  499. package/.opencode/oh-my-design/design-md/perplexity/DESIGN.md +0 -546
  500. package/.opencode/oh-my-design/design-md/piccollage/.verification.md +0 -34
  501. package/.opencode/oh-my-design/design-md/piccollage/DESIGN.md +0 -320
  502. package/.opencode/oh-my-design/design-md/pinkoi/.verification.md +0 -147
  503. package/.opencode/oh-my-design/design-md/pinkoi/DESIGN.md +0 -639
  504. package/.opencode/oh-my-design/design-md/pinkoi/README.md +0 -12
  505. package/.opencode/oh-my-design/design-md/pinkoi/_research/browse-1440px.png +0 -0
  506. package/.opencode/oh-my-design/design-md/pinkoi/_research.md +0 -167
  507. package/.opencode/oh-my-design/design-md/pinterest/.verification.md +0 -141
  508. package/.opencode/oh-my-design/design-md/pinterest/DESIGN.md +0 -366
  509. package/.opencode/oh-my-design/design-md/pinterest/README.md +0 -23
  510. package/.opencode/oh-my-design/design-md/pinterest/preview-dark.html +0 -233
  511. package/.opencode/oh-my-design/design-md/pinterest/preview.html +0 -232
  512. package/.opencode/oh-my-design/design-md/pixiv/.verification.md +0 -20
  513. package/.opencode/oh-my-design/design-md/pixiv/DESIGN.md +0 -613
  514. package/.opencode/oh-my-design/design-md/pixnet/.verification.md +0 -31
  515. package/.opencode/oh-my-design/design-md/pixnet/DESIGN.md +0 -430
  516. package/.opencode/oh-my-design/design-md/posthog/.verification.md +0 -159
  517. package/.opencode/oh-my-design/design-md/posthog/DESIGN.md +0 -480
  518. package/.opencode/oh-my-design/design-md/posthog/README.md +0 -23
  519. package/.opencode/oh-my-design/design-md/posthog/preview-dark.html +0 -699
  520. package/.opencode/oh-my-design/design-md/posthog/preview.html +0 -749
  521. package/.opencode/oh-my-design/design-md/postype/.verification.md +0 -61
  522. package/.opencode/oh-my-design/design-md/postype/DESIGN.md +0 -431
  523. package/.opencode/oh-my-design/design-md/publy/DESIGN.md +0 -563
  524. package/.opencode/oh-my-design/design-md/qanda/.verification.md +0 -121
  525. package/.opencode/oh-my-design/design-md/qanda/DESIGN.md +0 -516
  526. package/.opencode/oh-my-design/design-md/ragic/.verification.md +0 -37
  527. package/.opencode/oh-my-design/design-md/ragic/DESIGN.md +0 -444
  528. package/.opencode/oh-my-design/design-md/rakuten/.verification.md +0 -60
  529. package/.opencode/oh-my-design/design-md/rakuten/DESIGN.md +0 -440
  530. package/.opencode/oh-my-design/design-md/ramp/.verification.md +0 -21
  531. package/.opencode/oh-my-design/design-md/ramp/DESIGN.md +0 -634
  532. package/.opencode/oh-my-design/design-md/rayark/.verification.md +0 -22
  533. package/.opencode/oh-my-design/design-md/rayark/DESIGN.md +0 -154
  534. package/.opencode/oh-my-design/design-md/raycast/.verification.md +0 -138
  535. package/.opencode/oh-my-design/design-md/raycast/DESIGN.md +0 -467
  536. package/.opencode/oh-my-design/design-md/raycast/README.md +0 -23
  537. package/.opencode/oh-my-design/design-md/raycast/preview-dark.html +0 -606
  538. package/.opencode/oh-my-design/design-md/raycast/preview.html +0 -688
  539. package/.opencode/oh-my-design/design-md/remember/.verification.md +0 -135
  540. package/.opencode/oh-my-design/design-md/remember/DESIGN.md +0 -504
  541. package/.opencode/oh-my-design/design-md/remember/_promo.json +0 -27
  542. package/.opencode/oh-my-design/design-md/remember/_research.md +0 -90
  543. package/.opencode/oh-my-design/design-md/renault/.verification.md +0 -139
  544. package/.opencode/oh-my-design/design-md/renault/DESIGN.md +0 -439
  545. package/.opencode/oh-my-design/design-md/renault/README.md +0 -23
  546. package/.opencode/oh-my-design/design-md/renault/preview-dark.html +0 -406
  547. package/.opencode/oh-my-design/design-md/renault/preview.html +0 -606
  548. package/.opencode/oh-my-design/design-md/replicate/.verification.md +0 -154
  549. package/.opencode/oh-my-design/design-md/replicate/DESIGN.md +0 -387
  550. package/.opencode/oh-my-design/design-md/replicate/README.md +0 -24
  551. package/.opencode/oh-my-design/design-md/replicate/preview-dark.html +0 -828
  552. package/.opencode/oh-my-design/design-md/replicate/preview.html +0 -831
  553. package/.opencode/oh-my-design/design-md/resend/.verification.md +0 -143
  554. package/.opencode/oh-my-design/design-md/resend/DESIGN.md +0 -440
  555. package/.opencode/oh-my-design/design-md/resend/README.md +0 -23
  556. package/.opencode/oh-my-design/design-md/resend/preview-dark.html +0 -355
  557. package/.opencode/oh-my-design/design-md/resend/preview.html +0 -354
  558. package/.opencode/oh-my-design/design-md/retool/.verification.md +0 -21
  559. package/.opencode/oh-my-design/design-md/retool/DESIGN.md +0 -645
  560. package/.opencode/oh-my-design/design-md/revolut/.verification.md +0 -140
  561. package/.opencode/oh-my-design/design-md/revolut/DESIGN.md +0 -319
  562. package/.opencode/oh-my-design/design-md/revolut/README.md +0 -23
  563. package/.opencode/oh-my-design/design-md/revolut/preview-dark.html +0 -234
  564. package/.opencode/oh-my-design/design-md/revolut/preview.html +0 -233
  565. package/.opencode/oh-my-design/design-md/richart/.verification.md +0 -41
  566. package/.opencode/oh-my-design/design-md/richart/DESIGN.md +0 -465
  567. package/.opencode/oh-my-design/design-md/ridi/.verification.md +0 -108
  568. package/.opencode/oh-my-design/design-md/ridi/DESIGN.md +0 -573
  569. package/.opencode/oh-my-design/design-md/riiid/.verification.md +0 -33
  570. package/.opencode/oh-my-design/design-md/riiid/DESIGN.md +0 -260
  571. package/.opencode/oh-my-design/design-md/ringle/.verification.md +0 -53
  572. package/.opencode/oh-my-design/design-md/ringle/DESIGN.md +0 -444
  573. package/.opencode/oh-my-design/design-md/robinhood/.verification.md +0 -21
  574. package/.opencode/oh-my-design/design-md/robinhood/DESIGN.md +0 -604
  575. package/.opencode/oh-my-design/design-md/runwayml/.verification.md +0 -141
  576. package/.opencode/oh-my-design/design-md/runwayml/DESIGN.md +0 -431
  577. package/.opencode/oh-my-design/design-md/runwayml/README.md +0 -24
  578. package/.opencode/oh-my-design/design-md/runwayml/preview-dark.html +0 -664
  579. package/.opencode/oh-my-design/design-md/runwayml/preview.html +0 -665
  580. package/.opencode/oh-my-design/design-md/salesforce/.verification.md +0 -66
  581. package/.opencode/oh-my-design/design-md/salesforce/DESIGN.md +0 -473
  582. package/.opencode/oh-my-design/design-md/sanity/.verification.md +0 -174
  583. package/.opencode/oh-my-design/design-md/sanity/DESIGN.md +0 -499
  584. package/.opencode/oh-my-design/design-md/sanity/README.md +0 -24
  585. package/.opencode/oh-my-design/design-md/sanity/preview-dark.html +0 -990
  586. package/.opencode/oh-my-design/design-md/sanity/preview.html +0 -1135
  587. package/.opencode/oh-my-design/design-md/sansan/.verification.md +0 -21
  588. package/.opencode/oh-my-design/design-md/sansan/DESIGN.md +0 -631
  589. package/.opencode/oh-my-design/design-md/sendbird/.verification.md +0 -67
  590. package/.opencode/oh-my-design/design-md/sendbird/DESIGN.md +0 -331
  591. package/.opencode/oh-my-design/design-md/sentry/.verification.md +0 -157
  592. package/.opencode/oh-my-design/design-md/sentry/DESIGN.md +0 -397
  593. package/.opencode/oh-my-design/design-md/sentry/README.md +0 -24
  594. package/.opencode/oh-my-design/design-md/sentry/preview-dark.html +0 -626
  595. package/.opencode/oh-my-design/design-md/sentry/preview.html +0 -951
  596. package/.opencode/oh-my-design/design-md/shinhancard/.verification.md +0 -31
  597. package/.opencode/oh-my-design/design-md/shinhancard/DESIGN.md +0 -421
  598. package/.opencode/oh-my-design/design-md/shopline/.verification.md +0 -34
  599. package/.opencode/oh-my-design/design-md/shopline/DESIGN.md +0 -431
  600. package/.opencode/oh-my-design/design-md/slack/.verification.md +0 -21
  601. package/.opencode/oh-my-design/design-md/slack/DESIGN.md +0 -635
  602. package/.opencode/oh-my-design/design-md/smarthr/DESIGN.md +0 -452
  603. package/.opencode/oh-my-design/design-md/smartnews/DESIGN.md +0 -360
  604. package/.opencode/oh-my-design/design-md/socar/DESIGN.md +0 -438
  605. package/.opencode/oh-my-design/design-md/socar/_promo.json +0 -28
  606. package/.opencode/oh-my-design/design-md/socar/_research.md +0 -55
  607. package/.opencode/oh-my-design/design-md/soomgo/.verification.md +0 -27
  608. package/.opencode/oh-my-design/design-md/soomgo/DESIGN.md +0 -326
  609. package/.opencode/oh-my-design/design-md/spacex/.verification.md +0 -132
  610. package/.opencode/oh-my-design/design-md/spacex/DESIGN.md +0 -415
  611. package/.opencode/oh-my-design/design-md/spacex/README.md +0 -23
  612. package/.opencode/oh-my-design/design-md/spacex/_research.md +0 -69
  613. package/.opencode/oh-my-design/design-md/spacex/preview-dark.html +0 -221
  614. package/.opencode/oh-my-design/design-md/spacex/preview.html +0 -220
  615. package/.opencode/oh-my-design/design-md/spoon/DESIGN.md +0 -492
  616. package/.opencode/oh-my-design/design-md/spotify/.verification.md +0 -128
  617. package/.opencode/oh-my-design/design-md/spotify/DESIGN.md +0 -489
  618. package/.opencode/oh-my-design/design-md/spotify/README.md +0 -23
  619. package/.opencode/oh-my-design/design-md/spotify/preview-dark.html +0 -231
  620. package/.opencode/oh-my-design/design-md/spotify/preview.html +0 -230
  621. package/.opencode/oh-my-design/design-md/starbucks/.verification.md +0 -21
  622. package/.opencode/oh-my-design/design-md/starbucks/DESIGN.md +0 -597
  623. package/.opencode/oh-my-design/design-md/stores/.verification.md +0 -61
  624. package/.opencode/oh-my-design/design-md/stores/DESIGN.md +0 -447
  625. package/.opencode/oh-my-design/design-md/stripe/.verification.md +0 -140
  626. package/.opencode/oh-my-design/design-md/stripe/DESIGN.md +0 -571
  627. package/.opencode/oh-my-design/design-md/stripe/README.md +0 -24
  628. package/.opencode/oh-my-design/design-md/stripe/preview-dark.html +0 -428
  629. package/.opencode/oh-my-design/design-md/stripe/preview.html +0 -419
  630. package/.opencode/oh-my-design/design-md/studio/.verification.md +0 -21
  631. package/.opencode/oh-my-design/design-md/studio/DESIGN.md +0 -602
  632. package/.opencode/oh-my-design/design-md/supabase/.verification.md +0 -145
  633. package/.opencode/oh-my-design/design-md/supabase/DESIGN.md +0 -389
  634. package/.opencode/oh-my-design/design-md/supabase/README.md +0 -24
  635. package/.opencode/oh-my-design/design-md/supabase/preview-dark.html +0 -977
  636. package/.opencode/oh-my-design/design-md/supabase/preview.html +0 -955
  637. package/.opencode/oh-my-design/design-md/superhuman/.verification.md +0 -184
  638. package/.opencode/oh-my-design/design-md/superhuman/DESIGN.md +0 -453
  639. package/.opencode/oh-my-design/design-md/superhuman/README.md +0 -23
  640. package/.opencode/oh-my-design/design-md/superhuman/preview-dark.html +0 -973
  641. package/.opencode/oh-my-design/design-md/superhuman/preview.html +0 -951
  642. package/.opencode/oh-my-design/design-md/surveycake/.verification.md +0 -31
  643. package/.opencode/oh-my-design/design-md/surveycake/DESIGN.md +0 -442
  644. package/.opencode/oh-my-design/design-md/tada/DESIGN.md +0 -579
  645. package/.opencode/oh-my-design/design-md/teamblind/.verification.md +0 -76
  646. package/.opencode/oh-my-design/design-md/teamblind/DESIGN.md +0 -497
  647. package/.opencode/oh-my-design/design-md/tesla/.verification.md +0 -149
  648. package/.opencode/oh-my-design/design-md/tesla/DESIGN.md +0 -501
  649. package/.opencode/oh-my-design/design-md/tesla/README.md +0 -23
  650. package/.opencode/oh-my-design/design-md/tesla/_research.md +0 -70
  651. package/.opencode/oh-my-design/design-md/tesla/preview-dark.html +0 -947
  652. package/.opencode/oh-my-design/design-md/tesla/preview.html +0 -925
  653. package/.opencode/oh-my-design/design-md/theverge/.verification.md +0 -21
  654. package/.opencode/oh-my-design/design-md/theverge/DESIGN.md +0 -500
  655. package/.opencode/oh-my-design/design-md/timee/.verification.md +0 -67
  656. package/.opencode/oh-my-design/design-md/timee/DESIGN.md +0 -444
  657. package/.opencode/oh-my-design/design-md/together.ai/.verification.md +0 -145
  658. package/.opencode/oh-my-design/design-md/together.ai/DESIGN.md +0 -389
  659. package/.opencode/oh-my-design/design-md/together.ai/README.md +0 -24
  660. package/.opencode/oh-my-design/design-md/together.ai/preview-dark.html +0 -892
  661. package/.opencode/oh-my-design/design-md/together.ai/preview.html +0 -897
  662. package/.opencode/oh-my-design/design-md/toss/.verification.md +0 -120
  663. package/.opencode/oh-my-design/design-md/toss/DESIGN.md +0 -698
  664. package/.opencode/oh-my-design/design-md/toss/README.md +0 -19
  665. package/.opencode/oh-my-design/design-md/toss-securities/DESIGN.md +0 -247
  666. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-proof.json +0 -126
  667. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-raw.json +0 -619
  668. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-stock.json +0 -525
  669. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/fonts.json +0 -24
  670. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/structure.json +0 -35
  671. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/tokens.json +0 -87
  672. package/.opencode/oh-my-design/design-md/tossbank/DESIGN.md +0 -576
  673. package/.opencode/oh-my-design/design-md/trenbe/.verification.md +0 -32
  674. package/.opencode/oh-my-design/design-md/trenbe/DESIGN.md +0 -293
  675. package/.opencode/oh-my-design/design-md/triple/DESIGN.md +0 -481
  676. package/.opencode/oh-my-design/design-md/tumblbug/DESIGN.md +0 -578
  677. package/.opencode/oh-my-design/design-md/tving/DESIGN.md +0 -317
  678. package/.opencode/oh-my-design/design-md/tving/assets/_reference/.live-inspect-proof.json +0 -131
  679. package/.opencode/oh-my-design/design-md/tving/assets/_reference/LICENSE-NOTE.md +0 -37
  680. package/.opencode/oh-my-design/design-md/tving/assets/_reference/attribution.md +0 -52
  681. package/.opencode/oh-my-design/design-md/tving/assets/_reference/fonts.json +0 -31
  682. package/.opencode/oh-my-design/design-md/tving/assets/_reference/screenshots/hero-desktop.png +0 -0
  683. package/.opencode/oh-my-design/design-md/tving/assets/_reference/structure.json +0 -55
  684. package/.opencode/oh-my-design/design-md/tving/assets/_reference/tokens.json +0 -115
  685. package/.opencode/oh-my-design/design-md/uber/.verification.md +0 -128
  686. package/.opencode/oh-my-design/design-md/uber/DESIGN.md +0 -423
  687. package/.opencode/oh-my-design/design-md/uber/README.md +0 -24
  688. package/.opencode/oh-my-design/design-md/uber/preview-dark.html +0 -1120
  689. package/.opencode/oh-my-design/design-md/uber/preview.html +0 -1119
  690. package/.opencode/oh-my-design/design-md/ubie/.verification.md +0 -21
  691. package/.opencode/oh-my-design/design-md/ubie/DESIGN.md +0 -615
  692. package/.opencode/oh-my-design/design-md/uniqlo/.verification.md +0 -21
  693. package/.opencode/oh-my-design/design-md/uniqlo/DESIGN.md +0 -575
  694. package/.opencode/oh-my-design/design-md/upbit/DESIGN.md +0 -337
  695. package/.opencode/oh-my-design/design-md/upbit/_research.md +0 -83
  696. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/.live-inspect-proof.json +0 -263
  697. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/fonts.json +0 -18
  698. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture-exchange.json +0 -1901
  699. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture.json +0 -1121
  700. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/structure.json +0 -52
  701. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/tokens.json +0 -169
  702. package/.opencode/oh-my-design/design-md/upstage/DESIGN.md +0 -270
  703. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/.live-inspect-proof.json +0 -157
  704. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_brand-resource-center.json +0 -44
  705. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_curated-samples.json +0 -310
  706. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_raw-capture.json +0 -1560
  707. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_root-vars.json +0 -76
  708. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_structure-raw.json +0 -298
  709. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/fonts.json +0 -35
  710. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/structure.json +0 -72
  711. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/tokens.json +0 -183
  712. package/.opencode/oh-my-design/design-md/velog/.verification.md +0 -26
  713. package/.opencode/oh-my-design/design-md/velog/DESIGN.md +0 -196
  714. package/.opencode/oh-my-design/design-md/vercel/.verification.md +0 -134
  715. package/.opencode/oh-my-design/design-md/vercel/DESIGN.md +0 -523
  716. package/.opencode/oh-my-design/design-md/vercel/README.md +0 -24
  717. package/.opencode/oh-my-design/design-md/vercel/preview-dark.html +0 -368
  718. package/.opencode/oh-my-design/design-md/vercel/preview.html +0 -367
  719. package/.opencode/oh-my-design/design-md/voicetube/.verification.md +0 -34
  720. package/.opencode/oh-my-design/design-md/voicetube/DESIGN.md +0 -266
  721. package/.opencode/oh-my-design/design-md/voltagent/.verification.md +0 -159
  722. package/.opencode/oh-my-design/design-md/voltagent/DESIGN.md +0 -454
  723. package/.opencode/oh-my-design/design-md/voltagent/README.md +0 -24
  724. package/.opencode/oh-my-design/design-md/voltagent/preview-dark.html +0 -487
  725. package/.opencode/oh-my-design/design-md/voltagent/preview.html +0 -766
  726. package/.opencode/oh-my-design/design-md/wadiz/DESIGN.md +0 -415
  727. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/.live-inspect-proof.json +0 -137
  728. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/fonts.json +0 -17
  729. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/structure.json +0 -35
  730. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/tokens.json +0 -80
  731. package/.opencode/oh-my-design/design-md/wanted/DESIGN.md +0 -575
  732. package/.opencode/oh-my-design/design-md/wanted/_promo.json +0 -31
  733. package/.opencode/oh-my-design/design-md/wanted/_research.md +0 -119
  734. package/.opencode/oh-my-design/design-md/wantedly/.verification.md +0 -53
  735. package/.opencode/oh-my-design/design-md/wantedly/DESIGN.md +0 -437
  736. package/.opencode/oh-my-design/design-md/warp/.verification.md +0 -156
  737. package/.opencode/oh-my-design/design-md/warp/DESIGN.md +0 -431
  738. package/.opencode/oh-my-design/design-md/warp/README.md +0 -23
  739. package/.opencode/oh-my-design/design-md/warp/preview-dark.html +0 -500
  740. package/.opencode/oh-my-design/design-md/warp/preview.html +0 -533
  741. package/.opencode/oh-my-design/design-md/watcha/DESIGN.md +0 -465
  742. package/.opencode/oh-my-design/design-md/wavve/DESIGN.md +0 -480
  743. package/.opencode/oh-my-design/design-md/wconcept/DESIGN.md +0 -556
  744. package/.opencode/oh-my-design/design-md/webflow/.verification.md +0 -151
  745. package/.opencode/oh-my-design/design-md/webflow/DESIGN.md +0 -330
  746. package/.opencode/oh-my-design/design-md/webflow/README.md +0 -23
  747. package/.opencode/oh-my-design/design-md/webflow/preview-dark.html +0 -147
  748. package/.opencode/oh-my-design/design-md/webflow/preview.html +0 -146
  749. package/.opencode/oh-my-design/design-md/wired/.verification.md +0 -21
  750. package/.opencode/oh-my-design/design-md/wired/DESIGN.md +0 -572
  751. package/.opencode/oh-my-design/design-md/wise/.verification.md +0 -141
  752. package/.opencode/oh-my-design/design-md/wise/DESIGN.md +0 -317
  753. package/.opencode/oh-my-design/design-md/wise/README.md +0 -23
  754. package/.opencode/oh-my-design/design-md/wise/preview-dark.html +0 -230
  755. package/.opencode/oh-my-design/design-md/wise/preview.html +0 -229
  756. package/.opencode/oh-my-design/design-md/x.ai/.verification.md +0 -140
  757. package/.opencode/oh-my-design/design-md/x.ai/DESIGN.md +0 -397
  758. package/.opencode/oh-my-design/design-md/x.ai/README.md +0 -24
  759. package/.opencode/oh-my-design/design-md/x.ai/preview-dark.html +0 -356
  760. package/.opencode/oh-my-design/design-md/x.ai/preview.html +0 -407
  761. package/.opencode/oh-my-design/design-md/xiaohongshu/DESIGN.md +0 -462
  762. package/.opencode/oh-my-design/design-md/yanolja/.verification.md +0 -83
  763. package/.opencode/oh-my-design/design-md/yanolja/DESIGN.md +0 -508
  764. package/.opencode/oh-my-design/design-md/yeogiotte/.verification.md +0 -210
  765. package/.opencode/oh-my-design/design-md/yeogiotte/DESIGN.md +0 -500
  766. package/.opencode/oh-my-design/design-md/yogiyo/DESIGN.md +0 -515
  767. package/.opencode/oh-my-design/design-md/yourator/.verification.md +0 -39
  768. package/.opencode/oh-my-design/design-md/yourator/DESIGN.md +0 -453
  769. package/.opencode/oh-my-design/design-md/zapier/.verification.md +0 -156
  770. package/.opencode/oh-my-design/design-md/zapier/DESIGN.md +0 -474
  771. package/.opencode/oh-my-design/design-md/zapier/README.md +0 -24
  772. package/.opencode/oh-my-design/design-md/zapier/preview-dark.html +0 -380
  773. package/.opencode/oh-my-design/design-md/zapier/preview.html +0 -372
  774. package/.opencode/oh-my-design/design-md/zigbang/DESIGN.md +0 -500
  775. package/.opencode/oh-my-design/design-md/zigbang/_promo.json +0 -16
  776. package/.opencode/oh-my-design/design-md/zigbang/_research.md +0 -101
  777. package/.opencode/oh-my-design/design-md/zigzag/DESIGN.md +0 -695
  778. package/.opencode/oh-my-design/design-md/zigzag/_promo.json +0 -23
  779. package/.opencode/oh-my-design/design-md/zigzag/_research.md +0 -64
  780. package/.opencode/oh-my-design/design-md/zozotown/.verification.md +0 -20
  781. package/.opencode/oh-my-design/design-md/zozotown/DESIGN.md +0 -578
  782. package/.opencode/oh-my-design/packages/mcp/dist/index.mjs +0 -21685
  783. package/.opencode/oh-my-design/packages/mcp/dist/index.mjs.map +0 -1
  784. package/.opencode/tools/akash_catalog.ts +0 -596
  785. package/.opencode/tools/extract-design-pattern.py +0 -182
  786. package/.opencode/tools/sdd_design.ts +0 -303
@@ -1,563 +0,0 @@
1
- ---
2
- id: publy
3
- name: PUBLY
4
- display_name_kr: 퍼블리
5
- country: KR
6
- category: education
7
- homepage: "https://publy.co"
8
- primary_color: "#7a3bff"
9
- logo:
10
- type: favicon
11
- slug: "https://www.google.com/s2/favicons?domain=publy.co&sz=128"
12
- verified: "2026-05-27"
13
- omd: "0.1"
14
- tokens:
15
- source: prose-derived
16
- extracted: "2026-06-09"
17
- colors:
18
- primary: "#7a3bff"
19
- primary-pressed: "#6429e6"
20
- primary-tint: "#f1ebff"
21
- canvas: "#ffffff"
22
- ink: "#0f172a"
23
- slate-950: "#111213"
24
- slate-800: "#282b2f"
25
- slate-700: "#3c4043"
26
- slate-600: "#575b5c"
27
- slate-500: "#77797b"
28
- slate-400: "#979b9e"
29
- slate-300: "#ced0d1"
30
- slate-200: "#e2e8f0"
31
- slate-100: "#f5f5f5"
32
- error: "#ef4444"
33
- success: "#16a34a"
34
- on-primary: "#ffffff"
35
- typography:
36
- family: { sans: "system-ui" }
37
- display: { size: 30, weight: 700, lineHeight: 1.33, tracking: -0.4, use: "Landing hero, report cover title" }
38
- heading-lg: { size: 24, weight: 700, lineHeight: 1.33, tracking: -0.3, use: "Section / report title" }
39
- heading: { size: 20, weight: 700, lineHeight: 1.40, tracking: -0.3, use: "Sub-section, card group header" }
40
- title: { size: 16, weight: 600, lineHeight: 1.50, tracking: -0.2, use: "Card title, list header" }
41
- body-lg: { size: 16, weight: 400, lineHeight: 1.63, tracking: -0.2, use: "Long-form report body, generous leading" }
42
- body: { size: 14, weight: 400, lineHeight: 1.57, tracking: -0.2, use: "Default body, card description" }
43
- label: { size: 14, weight: 600, lineHeight: 1.43, tracking: -0.2, use: "Tab label, emphasized inline" }
44
- caption: { size: 13, weight: 400, lineHeight: 1.38, tracking: -0.2, use: "Metadata, author, read-time" }
45
- micro: { size: 12, weight: 500, lineHeight: 1.33, tracking: -0.2, use: "Fine print, control labels" }
46
- spacing: { xs: 4, sm: 8, md: 12, base: 16, lg: 24, xl: 32, xxl: 48, section: 64 }
47
- rounded: { sm: 4, md: 8, lg: 12, full: 9999 }
48
- shadow:
49
- ambient: "rgba(0,0,0,0.06) 0px 2px 8px"
50
- standard: "rgba(0,0,0,0.08) 0px 4px 16px"
51
- elevated: "rgba(0,0,0,0.12) 0px 8px 28px"
52
- components:
53
- button-primary: { type: button, bg: "#7a3bff", fg: "#ffffff", radius: 8, padding: "12px 16px", font: "14px / 600", use: "Primary CTA — 멤버십 시작하기, 3일 무료체험" }
54
- button-outline: { type: button, bg: "#ffffff", fg: "#7a3bff", radius: 8, padding: "12px 16px", font: "14px / 600", use: "Secondary CTA — 저장하기, 공유하기, 1px #7a3bff border" }
55
- button-neutral: { type: button, bg: "#ffffff", fg: "#282b2f", radius: 8, padding: "12px 16px", font: "14px / 500", use: "Tertiary action, 1px #e2e8f0 border" }
56
- button-ghost: { type: button, fg: "#7a3bff", radius: 8, padding: "8px 12px", font: "14px / 600", use: "Inline text action, 더 보기" }
57
- input: { type: input, bg: "#ffffff", fg: "#0f172a", radius: 8, padding: "12px 14px", font: "14px / 400", use: "Default text input, 1px #e2e8f0 border, focus #7a3bff" }
58
- search: { type: input, bg: "#f5f5f5", fg: "#0f172a", radius: 8, padding: "12px 16px", use: "Header / discovery search bar" }
59
- content-card: { type: card, bg: "#ffffff", radius: 12, padding: "20px", use: "Report / content card, 1px #e2e8f0 border" }
60
- membership-card: { type: card, bg: "#f1ebff", radius: 12, padding: "24px", use: "Membership / paywall promotion" }
61
- tag-default: { type: badge, bg: "#f5f5f5", fg: "#575b5c", radius: 6, padding: "4px 8px", font: "13px / 600", use: "Topic category" }
62
- tag-active: { type: badge, bg: "#f1ebff", fg: "#7a3bff", radius: 6, padding: "4px 8px", font: "13px / 600", use: "Selected topic filter" }
63
- badge-best: { type: badge, bg: "#7a3bff", fg: "#ffffff", radius: 4, padding: "3px 6px", font: "11px / 700", use: "BEST / NEW / Series flags" }
64
- tab: { type: tab, fg: "#575b5c", font: "14px / 600", use: "Topic nav", active: "#7a3bff text + 2px purple underline" }
65
- components_harvested: true
66
- ---
67
-
68
- # Design System Inspiration of PUBLY (퍼블리)
69
-
70
- ## 1. Visual Theme & Atmosphere
71
-
72
- PUBLY is a Korean career-knowledge membership, and its interface reads like a calm professional reading room rebuilt for the work-from-anywhere generation -- clean, credible, and quietly confident. The page opens on a crisp white canvas (`#ffffff`) with deep slate-ink type (`#0f172a`) and a single decisive purple (`#7a3bff`) that carries every interactive moment: the membership CTA, links, active states, the "알림 설정하기" button. This isn't the institutional blue of legacy edtech nor the playful pastel of a consumer app; it's a saturated, modern violet that signals *premium knowledge, made for ambitious people.*
73
-
74
- The system is built on a slate-gray neutral foundation -- the Tailwind-style slate family (`#0f172a` ink, `#e2e8f0` borders) is everywhere, observed thousands of times across the live surface -- giving the product a composed, design-system-disciplined feel. Content is organized into clean cards with generous whitespace and a comfortable 14-16px reading scale, because the product *is* reading: long-form career reports, templates, and curated knowledge. The purple appears sparingly and deliberately, concentrated on the actions that move a member forward, while a soft purple-tint surface (`#f1ebff`) provides gentle emphasis without shouting.
75
-
76
- What defines PUBLY visually is the pairing of a credible slate-and-white reading environment with one ambitious purple accent. The chrome stays out of the way of the prose; the purple says "act on this knowledge." The result is a tool that feels both trustworthy enough to pay for and modern enough to feel like growth.
77
-
78
- **Key Characteristics:**
79
- - PUBLY Purple (`#7a3bff`) as the sole interactive accent — membership CTA, links, active states
80
- - Slate-ink type (`#0f172a`) on white, with a Tailwind-style slate neutral scale
81
- - System-UI / Pretendard font stack — clean, neutral, reading-optimized
82
- - Card-based content organization with generous whitespace — a professional reading room
83
- - Soft purple-tint surface (`#f1ebff`) for gentle emphasis, used sparingly
84
- - 8px radius rounded chrome — composed and modern, not sharp, not bubbly
85
- - Comfortable 14-16px reading scale — the product is long-form career knowledge
86
- - Slate-200 (`#e2e8f0`) hairline borders for clean card and section separation
87
-
88
- ## 2. Color Palette & Roles
89
-
90
- ### Primary
91
- - **PUBLY Purple** (`#7a3bff`): The sole primary interactive color — membership CTA, links, active tabs, selection. The workhorse accent (observed `rgb(122,59,255)`, ~100 occurrences).
92
- - **Purple Pressed** (`#6429e6`): Pressed / hover state for purple CTAs.
93
- - **Purple Tint** (`#f1ebff`): Soft purple-tinted backgrounds, selected-state fills, gentle emphasis (observed `rgb(241,235,255)`).
94
- - **Pure White** (`#ffffff`): Page canvas, card surfaces, button text on purple.
95
- - **Slate Ink** (`#0f172a`): Primary heading + body text color — deep slate, the most-used text color (observed `rgb(15,23,42)`).
96
-
97
- ### Neutral Scale (Slate)
98
- - **Slate 950** (`#111213`): Near-black for strongest emphasis (observed `rgb(17,18,19)`).
99
- - **Slate 800** (`#282b2f`): Strong labels, dark text (observed `rgb(40,43,47)`).
100
- - **Slate 700** (`#3c4043`): Emphasized body / sub-headings (observed `rgb(60,64,67)`).
101
- - **Slate 600** (`#575b5c`): Body secondary text, descriptions (observed `rgb(87,91,92)`).
102
- - **Slate 500** (`#77797b`): Caption text, metadata (observed `rgb(119,121,123)`).
103
- - **Slate 400** (`#979b9e`): Placeholder text, disabled labels (observed `rgb(151,155,158)`).
104
- - **Slate 300** (`#ced0d1`): Disabled borders, inactive icons (observed `rgb(206,208,209)`).
105
- - **Slate 200** (`#e2e8f0`): Default border, dividers, card outline — the most-used non-text color (observed `rgb(226,232,240)`, ~900 occurrences).
106
- - **Slate 100** (`#f5f5f5`): Secondary background, section fill (observed `rgb(245,245,245)`).
107
-
108
- ### Semantic
109
- - **Action Purple** (`#7a3bff`): Primary action / selected — the brand color doubles as the action color.
110
- - **Error Red** (`#ef4444`): Error states, destructive actions, validation failure.
111
- - **Success Green** (`#16a34a`): Confirmations, completion.
112
- - **Veil Dark** (`rgba(0,0,0,0.9)`): Strong overlay scrim for modals over content.
113
-
114
- ### Borders
115
- - **Border Default** (`#e2e8f0`): Card outline, divider, input border (slate-200).
116
- - **Border Strong** (`#ced0d1`): Emphasized border, active input outline (slate-300).
117
- - **Border Focus** (`#7a3bff`): Focused input, selected card.
118
-
119
- ## 3. Typography Rules
120
-
121
- ### Font Family
122
- - **Primary**: `-apple-system, "system-ui", "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji"` (observed on live `publy.co`, 2026-05; Korean falls through to system Korean / Pretendard where installed)
123
- - **Design Principle**: A neutral system-UI stack chosen for reading credibility, not branding flourish. Hierarchy comes from a disciplined slate-scale + weight contrast, not from a bespoke face. Korean and Latin render co-equally; long-form reports favor comfortable leading.
124
-
125
- ### Hierarchy
126
-
127
- | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
128
- |------|------|------|--------|-------------|----------------|-------|
129
- | Display | System sans | 30px | 700 | 40px | -0.4px | Landing hero, report cover title |
130
- | Heading Large | System sans | 24px | 700 | 32px | -0.3px | Section / report title |
131
- | Heading | System sans | 20px | 700 | 28px | -0.3px | Sub-section, card group header |
132
- | Title | System sans | 16px | 600 | 24px | -0.2px | Card title, list header |
133
- | Body Large | System sans | 16px | 400 | 26px | -0.2px | Long-form report body — generous leading |
134
- | Body | System sans | 14px | 400 | 22px | -0.2px | Default body, card description |
135
- | Label | System sans | 14px | 600 | 20px | -0.2px | Tab label, emphasized inline |
136
- | Caption | System sans | 13px | 400 | 18px | -0.2px | Metadata, author, read-time |
137
- | Caption Bold | System sans | 13px | 600 | 18px | -0.2px | Tag / category label |
138
- | Micro | System sans | 12px | 500 | 16px | -0.2px | Fine print, control labels |
139
-
140
- ### Principles
141
- - **Reading-first leading**: Long-form report body sits at 16px with generous ~26px line height — the product is sustained reading, not scanning.
142
- - **Slate hierarchy**: Text rank is built in the slate scale (`#0f172a` headings → `#575b5c` body → `#77797b` captions), not in color.
143
- - **Three weights**: 400 (body), 600 (titles / labels), 700 (headings). Light avoided.
144
- - **Purple stays off text**: The brand purple appears on links and interactive labels only — body text never inherits it.
145
- - **Tight tracking**: `-0.2px` to `-0.4px` letter-spacing keeps Korean and Latin titles composed.
146
-
147
- ## 4. Component Stylings
148
-
149
- ### Buttons
150
-
151
- **Primary (PUBLY Purple)**
152
- - Background: `#7a3bff`
153
- - Text: `#ffffff`
154
- - Border: none
155
- - Radius: 8px
156
- - Padding: 12px 16px
157
- - Font: 14px / 600 / system sans
158
- - Hover: `#6429e6`
159
- - Pressed: `#5a23cc`
160
- - Disabled: `#ced0d1` background, `#ffffff` text
161
- - Use: Primary CTA — `멤버십 시작하기`, `알림 설정하기`, `3일 무료체험`
162
-
163
- **Outline (Purple Border)**
164
- - Background: `#ffffff`
165
- - Text: `#7a3bff`
166
- - Border: 1px solid `#7a3bff`
167
- - Radius: 8px
168
- - Padding: 12px 16px
169
- - Font: 14px / 600 / system sans
170
- - Hover: `#f1ebff` background
171
- - Use: Secondary CTA — `저장하기`, `공유하기`
172
-
173
- **Neutral (Slate Outline)**
174
- - Background: `#ffffff`
175
- - Text: `#282b2f`
176
- - Border: 1px solid `#e2e8f0`
177
- - Radius: 8px
178
- - Padding: 12px 16px
179
- - Font: 14px / 500 / system sans
180
- - Hover: `#f5f5f5` background
181
- - Use: Tertiary actions — filter, sort, more options
182
-
183
- **Ghost (Text)**
184
- - Background: transparent
185
- - Text: `#7a3bff`
186
- - Border: none
187
- - Radius: 8px
188
- - Padding: 8px 12px
189
- - Font: 14px / 600 / system sans
190
- - Hover: `#f1ebff` background
191
- - Use: Inline text action, "더 보기" with arrow
192
-
193
- ### Inputs
194
-
195
- **Default**
196
- - Background: `#ffffff`
197
- - Text: `#0f172a`
198
- - Border: 1px solid `#e2e8f0`
199
- - Radius: 8px
200
- - Padding: 12px 14px
201
- - Font: 14px / 400 / system sans
202
- - Placeholder: `#979b9e`
203
- - Focus: 1px solid `#7a3bff`
204
- - Use: Default text input — login, profile, settings forms
205
-
206
- **Search**
207
- - Background: `#f5f5f5`
208
- - Text: `#0f172a`
209
- - Border: none
210
- - Radius: 8px
211
- - Padding: 12px 16px 12px 40px (left-pad for inline magnifier)
212
- - Font: 14px / 400 / system sans
213
- - Placeholder: `#77797b` ("어떤 지식이 필요하세요?")
214
- - Focus: `#ffffff` background, 1px solid `#7a3bff` border
215
- - Use: Header / discovery search bar
216
-
217
- **Error**
218
- - Background: `#ffffff`
219
- - Text: `#0f172a`
220
- - Border: 1px solid `#ef4444`
221
- - Radius: 8px
222
- - Padding: 12px 14px
223
- - Font: 14px / 400 / system sans
224
- - Use: Form validation failure — helper text 13px/400 `#ef4444` below
225
-
226
- ### Cards
227
-
228
- **Content Card**
229
- - Background: `#ffffff`
230
- - Border: 1px solid `#e2e8f0`
231
- - Radius: 12px
232
- - Padding: 20px
233
- - Shadow: none (hover adds `0px 2px 8px rgba(0,0,0,0.06)`)
234
- - Use: Default report / content card — cover image, title, author, read-time
235
-
236
- **Featured Card**
237
- - Background: `#ffffff` (or purple-tint `#f1ebff` accent strip)
238
- - Border: 1px solid `#e2e8f0`
239
- - Radius: 12px
240
- - Padding: 24px
241
- - Shadow: `0px 2px 8px rgba(0,0,0,0.06)`
242
- - Use: BEST / curated highlight on the home feed
243
-
244
- **Membership Card**
245
- - Background: `#f1ebff` (purple-tint) or `#7a3bff` (full purple for emphasis)
246
- - Border: none
247
- - Radius: 12px
248
- - Padding: 24px
249
- - Use: Membership / paywall promotion — the one place the brand purple fills a surface
250
-
251
- ### Badges & Tags
252
-
253
- **Category Tag (Default)**
254
- - Background: `#f5f5f5`
255
- - Text: `#575b5c`
256
- - Border: none
257
- - Radius: 6px
258
- - Padding: 4px 8px
259
- - Font: 13px / 600 / system sans
260
- - Use: Topic category (커리어, 마케팅, 개발)
261
-
262
- **Category Tag (Active)**
263
- - Background: `#f1ebff`
264
- - Text: `#7a3bff`
265
- - Border: none
266
- - Radius: 6px
267
- - Padding: 4px 8px
268
- - Font: 13px / 600 / system sans
269
- - Use: Selected topic filter
270
-
271
- **BEST / New Badge**
272
- - Background: `#7a3bff`
273
- - Text: `#ffffff`
274
- - Border: none
275
- - Radius: 4px
276
- - Padding: 3px 6px
277
- - Font: 11px / 700 / system sans
278
- - Use: "BEST", "NEW", "Series" content flags
279
-
280
- **Read-time / Meta**
281
- - Background: transparent
282
- - Text: `#77797b`
283
- - Border: none
284
- - Radius: 0px
285
- - Padding: 0px
286
- - Font: 13px / 400 / system sans
287
- - Use: Inline "8분", author name, publish date
288
-
289
- ### Navigation
290
- - Top header: `#ffffff` background, ~56px height, 1px bottom border `#e2e8f0`. Logo left, search center, profile / membership CTA right.
291
- - Topic nav: horizontal items (BEST / 시리즈 / 템플릿 / 커리어), 14px/600, active = `#7a3bff` text + 2px purple underline, inactive `#575b5c`.
292
- - Profile-driven feed: role / experience profiling powers a personalized "오늘의 콘텐츠" feed.
293
-
294
- ## 5. Layout Principles
295
-
296
- ### Spacing System
297
- - Base unit: 4px
298
- - Scale: 4px, 8px, 12px, 16px, 20px, 24px, 32px, 40px, 56px
299
- - Global gutter (mobile): 16px each side
300
- - Global gutter (desktop): 24px each side, max content width ~1080px
301
- - Card internal padding: 20-24px (comfortable reading-room spacing)
302
- - Inter-section vertical spacing: 32-40px between feed sections
303
-
304
- ### Grid & Container
305
- - Mobile: single-column stack of content cards
306
- - Tablet: 2-column card grid
307
- - Desktop: 2-3 column card grid, centered ~1080px column; report-reading view narrows to a single comfortable measure (~720px)
308
- - The feed is a vertical stack of curated card sections — a personalized reading list
309
-
310
- ### Whitespace Philosophy
311
- - **Room to read**: Long-form reports get a narrow, comfortable measure with generous leading — reading comfort over density.
312
- - **Cards breathe**: 20-24px internal padding and 32-40px section gaps keep the professional reading-room composure.
313
- - **Purple is rare on purpose**: The accent earns its emphasis by appearing sparingly amid the calm slate-and-white.
314
-
315
- ### Border Radius Scale
316
- - Subtle (4px): Small badges (BEST / NEW)
317
- - Standard (6px): Category tags
318
- - Comfortable (8px): Buttons, inputs, ghost actions
319
- - Soft (12px): Content cards, membership cards
320
- - Note: PUBLY is a *composed mid-radius* system — nothing sharp (transactional), nothing bubbly (consumer-app). 8-12px is the credible-professional range.
321
-
322
- ## 6. Depth & Elevation
323
-
324
- | Level | Treatment | Use |
325
- |-------|-----------|-----|
326
- | Flat (Level 0) | No shadow, 1px `#e2e8f0` border | Default content card, page surface |
327
- | Hover (Level 1) | `0px 2px 8px rgba(0,0,0,0.06)` | Card hover lift, featured card |
328
- | Soft (Level 2) | `0px 4px 12px rgba(0,0,0,0.08)` | Dropdown menus, sticky header on scroll |
329
- | Floating (Level 3) | `0px 8px 24px rgba(0,0,0,0.12)` | Modals, bottom sheets |
330
-
331
- **Shadow Philosophy**: PUBLY communicates credibility through composed flatness, not depth. Default cards carry a 1px slate-200 border instead of a shadow — the design-system-disciplined look. Shadows appear only on hover lift and floating overlays, always neutral pure-black at low opacity. No brand-tinted shadows; the purple lives in fills and borders.
332
-
333
- ## 7. Do's and Don'ts
334
-
335
- ### Do
336
- - Use PUBLY Purple (`#7a3bff`) for the membership CTA, links, and active states
337
- - Use the slate scale (`#0f172a` → `#575b5c` → `#77797b`) to build text hierarchy
338
- - Give long-form report body generous ~26px leading at 16px
339
- - Use purple-tint `#f1ebff` for gentle emphasis (selected tags, membership surface)
340
- - Default cards to 1px `#e2e8f0` border, no shadow — the composed look
341
- - Keep radius in the 8-12px credible-professional range
342
- - Reserve the purple for forward-moving actions — let it stay rare
343
-
344
- ### Don't
345
- - Don't introduce a second brand hue — purple is the only accent
346
- - Don't put the brand purple on body text — links and actions only
347
- - Don't drop card borders for heavy shadows — the 1px slate border is the brand
348
- - Don't sharpen corners to 0-4px (transactional) or balloon to 20px+ (consumer-toy)
349
- - Don't crowd long-form reading — comfort over density
350
- - Don't use red for anything but errors
351
- - Don't overuse the purple — its scarcity is what makes it read as premium
352
-
353
- ## 8. Responsive Behavior
354
-
355
- ### Breakpoints
356
- | Name | Width | Key Changes |
357
- |------|-------|-------------|
358
- | Mobile | <768px | Single-column card stack, bottom nav |
359
- | Tablet | 768-1024px | 2-column card grid, side filters |
360
- | Desktop | >1024px | 2-3 column grid, ~1080px column; report view narrows to ~720px |
361
-
362
- ### Touch Targets
363
- - Primary CTA: 44-47px height
364
- - Category tags: 32px height
365
- - Nav items: 44px height
366
- - Content card: full card tap area
367
-
368
- ### Collapsing Strategy
369
- - Desktop multi-column card grid → mobile single-column stack
370
- - Side filters → mobile bottom-sheet filter
371
- - Report reading view stays a comfortable single measure at every breakpoint
372
-
373
- ### Image Behavior
374
- - Report cover images: 16:9 or 3:2, 8px radius top corners on cards
375
- - Author avatars: circular, 32-40px
376
- - Inline report imagery: full content-width, rounded 8px
377
-
378
- ## 9. Agent Prompt Guide
379
-
380
- ### Quick Color Reference
381
- - Primary CTA: PUBLY Purple (`#7a3bff`)
382
- - CTA Hover: Purple Dark (`#6429e6`)
383
- - Background: Pure White (`#ffffff`)
384
- - Surface fill: Slate 100 (`#f5f5f5`)
385
- - Heading text: Slate Ink (`#0f172a`)
386
- - Body text: Slate 600 (`#575b5c`)
387
- - Caption: Slate 500 (`#77797b`)
388
- - Placeholder: Slate 400 (`#979b9e`)
389
- - Border: Slate 200 (`#e2e8f0`)
390
- - Purple tint (emphasis): (`#f1ebff`)
391
- - Error: Red (`#ef4444`)
392
-
393
- ### Example Component Prompts
394
- - "Create a PUBLY content card: white bg, 1px solid #e2e8f0 border, 12px radius, 20px padding, no shadow. 16:9 cover image with 8px top radius, then title 16px/600 #0f172a (2 lines, ellipsis), 8px gap, author 13px/400 #77797b + '·' + read-time '8분'. Hover adds 0px 2px 8px rgba(0,0,0,0.06)."
395
- - "Build a primary CTA: #7a3bff bg, white text, 14px weight 600 system-sans, padding 12px 16px, 8px radius. Hover #6429e6. Label '멤버십 시작하기'."
396
- - "Design a topic tag bar: horizontal scroll, 8px gap. Default: #f5f5f5 bg, #575b5c 13px/600, 6px radius, 4px 8px padding. Active: #f1ebff bg, #7a3bff text."
397
- - "Create a membership card: #f1ebff purple-tint bg, no border, 12px radius, 24px padding. Heading 20px/700 #0f172a, benefit list 14px/400 #575b5c, full-purple #7a3bff CTA '3일 무료체험'."
398
- - "Design a PUBLY header: white bg, 56px height, 1px bottom border #e2e8f0. Logo left, search center (#f5f5f5 bg, 8px radius, placeholder #77797b '어떤 지식이 필요하세요?'), profile + purple membership CTA right."
399
-
400
- ### Iteration Guide
401
- 1. PUBLY purple `#7a3bff` is the sole interactive accent — CTA, links, active states
402
- 2. Text hierarchy is built in the slate scale, never in color
403
- 3. Default cards: 1px `#e2e8f0` border, no shadow — the composed look
404
- 4. Long-form body: 16px / ~26px leading for reading comfort
405
- 5. Radius 8-12px — credible-professional, not sharp, not bubbly
406
- 6. Purple-tint `#f1ebff` for gentle emphasis; full purple only on membership surfaces
407
- 7. Keep the purple rare — scarcity is the premium signal
408
-
409
- ---
410
-
411
- ## 10. Voice & Tone
412
-
413
- PUBLY speaks like a sharp, generous senior colleague who has done the reading for you — credible, direct, and growth-oriented without being preachy. The voice respects the reader's time and ambition; it sells knowledge as a tool for steady career growth (`꾸준한 성장`), not as hustle-culture pressure. Korean copy uses clear professional endings (`-요`, `-합니다` in formal report contexts) and confident imperatives (`멤버십 시작하기`, `더 알아보기`). The brand positions itself as the place where you encounter useful new career content month after month.
414
-
415
- | Context | Tone |
416
- |---|---|
417
- | CTAs | Confident Korean (`멤버십 시작하기`, `3일 무료체험`, `알림 설정하기`, `더 보기`) |
418
- | Membership / paywall | Value-forward, respectful (`커리어에 필요한 지식, 매달 새롭게`). Never `지금 결제 안 하면 손해`. |
419
- | Report titles / deks | Specific, useful, no clickbait (`PM이 알아야 할 데이터 지표 7가지`). |
420
- | Empty states | Helpful + suggestion (`아직 저장한 콘텐츠가 없어요` + `콘텐츠 둘러보기`). Never `데이터가 없습니다`. |
421
- | Error messages | Blameless + actionable (`다시 시도해 주세요`). No `오류가 발생했습니다` boilerplate. |
422
- | Profile / onboarding | Treats the reader as a professional (`어떤 일을 하고 계세요?`), used to personalize. |
423
- | Notifications | Curated relevance (`이번 주 커리어 콘텐츠가 도착했어요`), low-frequency. |
424
-
425
- **Forbidden phrases.** `지금 결제 안 하면 손해`, `인생 역전`, `대박 꿀팁!!!`, `데이터가 없습니다`, `오류가 발생했습니다`, `불편을 드려 죄송합니다`. The brand sells credible knowledge, not hustle hype or clickbait. Emoji used sparingly, never in error states or paywall copy.
426
-
427
- **Voice samples.**
428
-
429
- - `커리어 멤버십 PUBLY` — App Store / product positioning. <!-- cited: apps.apple.com PUBLY listing, 2026-05 -->
430
- - `꾸준한 성장` — brand value framing around steady career growth. <!-- cited: live publy.co, 2026-05 -->
431
- - `알림 설정하기` — primary engagement CTA on the live home surface. <!-- cited: live publy.co, 2026-05 -->
432
- - `이번 주 커리어 콘텐츠가 도착했어요` — curated notification. <!-- illustrative: standard PUBLY content-delivery pattern -->
433
- - `3일 무료체험` — membership trial CTA. <!-- illustrative: standard PUBLY membership pattern -->
434
-
435
- ## 11. Brand Narrative
436
-
437
- PUBLY (퍼블리) is a Korean career-knowledge membership that delivers career trends and workplace-useful knowledge across the arc of a professional's career, framing itself as an integrated career membership where members encounter new, beneficial content every month ([apps.apple.com — 커리어 멤버십 PUBLY](https://apps.apple.com/bb/app/%ED%8D%BC%EB%B8%94%EB%A6%AC-%EC%BB%A4%EB%A6%AC%EC%96%B4-%EB%A9%A4%EB%B2%84%EC%8B%AD-publy/id1440756899)). It began as a curated long-form digital-content platform — readers funded and read in-depth reports on business, product, and career topics — and evolved into a subscription membership organized around topics, series, templates, and a personalized feed driven by each member's role and experience profile.
438
-
439
- The design reflects that evolution. The product is fundamentally about reading credible knowledge, so the interface is a composed slate-and-white reading room: 1px slate borders instead of heavy shadows, comfortable long-form leading, and a personalized "오늘의 콘텐츠" feed. The single saturated purple `#7a3bff` is the brand's signal of ambition and forward motion, concentrated on the actions that turn knowledge into a member's next step. The current live surface is built on a Tailwind-style slate foundation, giving it a clean, design-system-disciplined credibility.
440
-
441
- What PUBLY refuses: the hustle-culture hype of self-improvement content mills, the institutional dryness of legacy corporate e-learning, and the clickbait packaging of free content farms. Its bet is that ambitious professionals will pay for curated, credible, well-designed knowledge — and the design has to look worth paying for: composed enough to trust, modern enough to feel like growth.
442
-
443
- ## 12. Principles
444
-
445
- 1. **The product is reading.** Everything serves sustained reading of credible knowledge. *UI implication:* long-form body gets a comfortable measure and generous leading; never sacrifice reading comfort for density.
446
- 2. **One purple, rarely used.** `#7a3bff` is the only accent and earns emphasis through scarcity. *UI implication:* if purple appears on more than the forward-moving actions and active states, it has been overused — pull it back.
447
- 3. **Hierarchy in slate, not color.** Text rank is built in the slate scale. *UI implication:* never reach for a colored label to create hierarchy; restate with weight + slate-shade.
448
- 4. **Composed flatness over depth.** Default cards carry a 1px slate border, not a shadow. *UI implication:* shadows are for hover and floating overlays only; the flat-bordered card is the credible-professional default.
449
- 5. **Credible, not hype.** The brand sells knowledge as a tool, not a life-hack. *UI implication:* copy and packaging avoid clickbait and urgency; titles are specific and useful.
450
- 6. **Worth paying for.** The design has to justify a membership fee. *UI implication:* polish, whitespace, and consistency are non-negotiable — a cheap-looking surface undermines the value proposition.
451
-
452
- ## 13. Personas
453
-
454
- *Personas are fictional archetypes informed by PUBLY's publicly described user base (Korean knowledge workers and ambitious professionals investing in career growth), not individual people.*
455
-
456
- **지원 (Jiwon), 30, Seoul.** Product manager at a startup. Reads PUBLY reports on the subway to keep up with PM frameworks and data literacy. Saves templates she can adapt at work. Subscribed because the curation saves her the time of filtering free content of unknown quality.
457
-
458
- **태경 (Taekyung), 36, Seoul.** Marketing team lead. Uses PUBLY to brief himself before strategy meetings and to share relevant reports with his team. Values the credible, well-edited packaging — he'd be embarrassed to forward a clickbait blog post.
459
-
460
- **현지 (Hyunji), 27, Pangyo.** Junior developer transitioning toward engineering management. Follows career-growth series and reads on her laptop in the evening. The calm slate reading view is part of why she actually finishes reports instead of bookmarking and forgetting.
461
-
462
- **민호 (Minho), 42, Seoul.** Mid-career professional considering a pivot. Set up a detailed role/experience profile so the feed surfaces relevant transition content. Treats the monthly fee as a small, deliberate investment in his own growth.
463
-
464
- ## 14. States
465
-
466
- | State | Treatment |
467
- |---|---|
468
- | **Empty (no saved content)** | Single line (`아직 저장한 콘텐츠가 없어요`) in 14px/400 `#575b5c`, 12px gap, purple-outline CTA `콘텐츠 둘러보기`. No harsh empty illustration. |
469
- | **Empty (search no results)** | One line `'{검색어}'에 대한 결과가 없어요` 14px/400 `#575b5c`, then recommended topics below. Never a dead-end. |
470
- | **Empty (filter cleared)** | `조건에 맞는 콘텐츠가 없어요` 14px/400 `#77797b`. No CTA — user adjusts filters. |
471
- | **Loading (feed)** | Skeleton cards at `#f5f5f5` matching the card layout: 16:9 cover rectangle, two title lines, one meta line. Shimmer 1.2s, 6% white highlight. No spinner overlay. |
472
- | **Loading (report content)** | Skeleton text blocks at `#f5f5f5` matching paragraph rhythm; cover fades in. No blocking spinner. |
473
- | **Loading (subscribe action)** | Purple button text swaps to a 20px `#ffffff` spinner — geometry unchanged for frame-stability. |
474
- | **Error (inline form)** | Input border `#ef4444` 1px, helper text 13px/400 `#ef4444` below. One actionable sentence (`이메일을 다시 확인해 주세요`). |
475
- | **Error (toast)** | `#0f172a` background, white 14px/500 text, 8px radius, 3s auto-dismiss. Bottom of screen. One sentence, no icon. |
476
- | **Error (network / blocking)** | Centered: 16px/700 `#0f172a` headline (`연결이 불안정해요`), 14px/400 `#575b5c` subline, purple retry button. No illustration. |
477
- | **Success (saved)** | Bottom snackbar: `#0f172a` bg, white 14px/500 `저장했어요`, purple-text `저장함 보기` button on right. 3s auto-dismiss. |
478
- | **Success (membership started)** | Dedicated confirmation screen: `멤버십이 시작되었어요` 24px/700 `#0f172a`, benefit summary card, purple `콘텐츠 둘러보기` CTA. Composed, not confetti-heavy. |
479
- | **Skeleton** | `#f5f5f5` blocks at exact card dimensions, shimmer 1.2s. Title and meta slots blank until resolved. |
480
- | **Disabled** | Button bg drops to `#ced0d1`, text stays `#ffffff`. No outline tricks. |
481
-
482
- ## 15. Motion & Easing
483
-
484
- **Durations** (named, not raw milliseconds):
485
-
486
- | Token | Value | Use |
487
- |---|---|---|
488
- | `motion-instant` | 0ms | Toggle flips, checkbox states |
489
- | `motion-fast` | 150ms | Hover, focus, button press, card lift |
490
- | `motion-standard` | 220ms | Default — card expand, tab switch, dropdown reveal |
491
- | `motion-slow` | 320ms | Sheet / modal presentation, success entry |
492
- | `motion-page` | 280ms | Route push/pop |
493
-
494
- **Easings:**
495
-
496
- | Token | Curve | Use |
497
- |---|---|---|
498
- | `ease-enter` | `cubic-bezier(0.0, 0.0, 0.2, 1)` | Sheets, modals, route entries |
499
- | `ease-exit` | `cubic-bezier(0.4, 0.0, 1, 1)` | Dismissals, modal close |
500
- | `ease-standard` | `cubic-bezier(0.4, 0.0, 0.2, 1)` | Two-way transitions — card hover, tab content |
501
-
502
- **Spring stance.** Spring and overshoot easings are avoided on PUBLY surfaces. The brand is a credible professional reading product; bouncy motion reads as consumer-toy and undermines the worth-paying-for composure. Motion is calm and functional — a card lifts gently on hover, a sheet slides up, content fades in. The reading experience stays still and steady.
503
-
504
- **Signature motions.**
505
-
506
- 1. **Card hover lift.** On desktop, a content card raises with a soft shadow (`0px 2px 8px rgba(0,0,0,0.06)`) over `motion-fast / ease-standard` — a quiet invitation to read, never a bounce.
507
- 2. **Report fade-in.** Long-form report content fades in section by section as it loads (`motion-standard / ease-enter`) — the reading surface composes calmly rather than popping.
508
- 3. **Membership sheet.** The paywall / membership sheet rises from `y+40px` (`motion-slow / ease-enter`) with a backdrop fade to `rgba(0,0,0,0.5)`. Dismissal `motion-fast / ease-exit`.
509
- 4. **Tab switch.** Topic-feed tabs cross-fade content (`motion-standard`) — sliding would imply an axial relationship the topics don't have.
510
- 5. **Reduce motion.** Under `prefers-reduced-motion: reduce`, all `motion-*` collapse to `motion-instant`, cross-fades replace any slide. The reading experience stays fully usable.
511
-
512
- <!--
513
- OmD v0.1 Sources — Philosophy Layer (sections 10–15)
514
-
515
- Tier 1 — Direct verification (MCP playwright, 2026-05-27):
516
- - https://publy.co/ (live home surface). Confirmed: body font-family
517
- -apple-system, "system-ui", "Segoe UI", Roboto, ... sans-serif; body
518
- color rgb(15,23,42) = #0f172a (slate ink, dominant text); body bg
519
- #ffffff; primary CTA bg rgb(122,59,255) = #7a3bff ("알림 설정하기",
520
- 8px radius, 12px padding, 14px) — the sole interactive accent
521
- (~100 occurrences); purple-tint rgb(241,235,255) = #f1ebff; dominant
522
- border rgb(226,232,240) = #e2e8f0 (slate-200, ~900 occurrences);
523
- slate scale rgb(87,91,92)/rgb(119,121,123)/rgb(151,155,158)/
524
- rgb(206,208,209); section fill rgb(245,245,245).
525
-
526
- Tier 2 — Press / secondary (WebSearch, 2026-05):
527
- - https://apps.apple.com/bb/app/퍼블리-커리어-멤버십-publy/id1440756899
528
- — "커리어 멤버십" positioning; monthly career content; integrated
529
- career membership across a professional's career arc.
530
-
531
- ASSUMED-VS-VERIFIED NOTE: The task brief assumed primary blue #2440FF
532
- (+ black). Live inspect found the sole interactive accent is purple
533
- #7a3bff (rgb(122,59,255)), NOT a blue. PUBLY's current surface is
534
- purple-led. This DESIGN.md uses the live-verified #7a3bff as
535
- primary_color. The assumed #2440FF does not appear as a dominant token
536
- on the current live surface.
537
-
538
- Personas (§13) are fictional archetypes informed by PUBLY's publicly
539
- described user base (Korean knowledge workers / ambitious professionals).
540
- Any resemblance to specific individuals is unintended.
541
-
542
- Interpretive claims (editorial, not documented PUBLY statements):
543
- - "Professional reading room" / "worth paying for" framing (§1, §11,
544
- §12) — editorial reading of the slate-and-white reading surface +
545
- membership model.
546
- - The 6 numbered principles (§12) — synthesized from observed surface
547
- behavior + the curated-knowledge membership positioning; not a
548
- published design-principles list.
549
- - Component-internal geometry beyond observed tokens (card radii, badge
550
- values, shadow specs) is reconciled from the live composed-flat slate
551
- surface; re-verify in a stable session before treating as
552
- authoritative DS specs.
553
- - The spring stance (§15) — derived from the credible-professional
554
- brand posture, not a documented PUBLY motion rule.
555
- -->
556
-
557
- ---
558
-
559
- **Verified:** 2026-05-27 (omd:add-reference initial create — Tier 1 live inspect / Tier 2 press confirmed)
560
- **Tier 1 sources:** publy.co (live playwright inspect — system-UI font stack, body slate-ink `#0f172a` on `#fff`, sole interactive accent purple `#7a3bff` on primary CTA at 8px radius / 12px padding / 14px·600, purple-tint `#f1ebff`, dominant border slate-200 `#e2e8f0`, full slate neutral scale, section fill `#f5f5f5`).
561
- **Tier 2 sources:** getdesign.md/publy — not checked. styles.refero.design — not checked. App Store ("커리어 멤버십 PUBLY", monthly career content, integrated career membership).
562
- **Style ref:** `notion` (neutral composed-reading tone scaffolding).
563
- **Conflicts unresolved:** Assumed primary `#2440FF` blue (from task brief) NOT confirmed — live inspect found the sole interactive accent is purple `#7a3bff`. Resolved in favor of Tier 1 live value `#7a3bff`. Component-internal geometry reconciled from surface treatment; re-run Tier 2 (getdesign/refero) to lock token values.