zugzbot 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (784) hide show
  1. package/.opencode/agents/sdd-coder.md +5 -4
  2. package/.opencode/agents/sdd-orchestrator.md +9 -8
  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 +9 -5
  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 +71 -15
  13. package/.opencode/templates/nextjs-shadcn/components.json +2 -1
  14. package/.opencode/tools/sdd_catalog.ts +335 -20
  15. package/.opencode/tools/sdd_core.ts +8 -6
  16. package/.opencode/tools/sdd_lucide.ts +112 -0
  17. package/README.md +1 -7
  18. package/opencode.json +0 -10
  19. package/package.json +1 -3
  20. package/.opencode/oh-my-design/design-md/11st/.verification.md +0 -37
  21. package/.opencode/oh-my-design/design-md/11st/DESIGN.md +0 -400
  22. package/.opencode/oh-my-design/design-md/17live/DESIGN.md +0 -467
  23. package/.opencode/oh-my-design/design-md/29cm/DESIGN.md +0 -495
  24. package/.opencode/oh-my-design/design-md/29cm/_promo.json +0 -23
  25. package/.opencode/oh-my-design/design-md/29cm/_research.md +0 -103
  26. package/.opencode/oh-my-design/design-md/3o3/.verification.md +0 -73
  27. package/.opencode/oh-my-design/design-md/3o3/DESIGN.md +0 -454
  28. package/.opencode/oh-my-design/design-md/91app/.verification.md +0 -25
  29. package/.opencode/oh-my-design/design-md/91app/DESIGN.md +0 -182
  30. package/.opencode/oh-my-design/design-md/abema/.verification.md +0 -64
  31. package/.opencode/oh-my-design/design-md/abema/DESIGN.md +0 -535
  32. package/.opencode/oh-my-design/design-md/ably/DESIGN.md +0 -646
  33. package/.opencode/oh-my-design/design-md/ably/_promo.json +0 -18
  34. package/.opencode/oh-my-design/design-md/ably/_research.md +0 -120
  35. package/.opencode/oh-my-design/design-md/accupass/.verification.md +0 -66
  36. package/.opencode/oh-my-design/design-md/accupass/DESIGN.md +0 -494
  37. package/.opencode/oh-my-design/design-md/adobe/.verification.md +0 -63
  38. package/.opencode/oh-my-design/design-md/adobe/DESIGN.md +0 -458
  39. package/.opencode/oh-my-design/design-md/airbnb/.verification.md +0 -143
  40. package/.opencode/oh-my-design/design-md/airbnb/DESIGN.md +0 -639
  41. package/.opencode/oh-my-design/design-md/airbnb/README.md +0 -23
  42. package/.opencode/oh-my-design/design-md/airbnb/preview-dark.html +0 -234
  43. package/.opencode/oh-my-design/design-md/airbnb/preview.html +0 -233
  44. package/.opencode/oh-my-design/design-md/airtable/.verification.md +0 -136
  45. package/.opencode/oh-my-design/design-md/airtable/DESIGN.md +0 -314
  46. package/.opencode/oh-my-design/design-md/airtable/README.md +0 -23
  47. package/.opencode/oh-my-design/design-md/airtable/preview-dark.html +0 -165
  48. package/.opencode/oh-my-design/design-md/airtable/preview.html +0 -164
  49. package/.opencode/oh-my-design/design-md/alipay/DESIGN.md +0 -506
  50. package/.opencode/oh-my-design/design-md/amazingtalker/.verification.md +0 -38
  51. package/.opencode/oh-my-design/design-md/amazingtalker/DESIGN.md +0 -434
  52. package/.opencode/oh-my-design/design-md/appier/DESIGN.md +0 -465
  53. package/.opencode/oh-my-design/design-md/apple/.verification.md +0 -162
  54. package/.opencode/oh-my-design/design-md/apple/DESIGN.md +0 -613
  55. package/.opencode/oh-my-design/design-md/apple/README.md +0 -24
  56. package/.opencode/oh-my-design/design-md/apple/preview-dark.html +0 -420
  57. package/.opencode/oh-my-design/design-md/apple/preview.html +0 -414
  58. package/.opencode/oh-my-design/design-md/baemin/.verification.md +0 -132
  59. package/.opencode/oh-my-design/design-md/baemin/DESIGN.md +0 -578
  60. package/.opencode/oh-my-design/design-md/baemin/README.md +0 -19
  61. package/.opencode/oh-my-design/design-md/baemin/_research.md +0 -84
  62. package/.opencode/oh-my-design/design-md/banksalad/DESIGN.md +0 -688
  63. package/.opencode/oh-my-design/design-md/banksalad/_promo.json +0 -29
  64. package/.opencode/oh-my-design/design-md/banksalad/_research.md +0 -190
  65. package/.opencode/oh-my-design/design-md/bilibili/DESIGN.md +0 -471
  66. package/.opencode/oh-my-design/design-md/bithumb/.verification.md +0 -31
  67. package/.opencode/oh-my-design/design-md/bithumb/DESIGN.md +0 -208
  68. package/.opencode/oh-my-design/design-md/bmw/.verification.md +0 -114
  69. package/.opencode/oh-my-design/design-md/bmw/DESIGN.md +0 -360
  70. package/.opencode/oh-my-design/design-md/bmw/README.md +0 -23
  71. package/.opencode/oh-my-design/design-md/bmw/preview-dark.html +0 -211
  72. package/.opencode/oh-my-design/design-md/bmw/preview.html +0 -210
  73. package/.opencode/oh-my-design/design-md/brandi/.verification.md +0 -29
  74. package/.opencode/oh-my-design/design-md/brandi/DESIGN.md +0 -414
  75. package/.opencode/oh-my-design/design-md/bunjang/DESIGN.md +0 -374
  76. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/.live-inspect-proof.json +0 -260
  77. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/fonts.json +0 -33
  78. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/logo-icon.svg +0 -10
  79. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/structure.json +0 -131
  80. package/.opencode/oh-my-design/design-md/bunjang/assets/_reference/tokens.json +0 -147
  81. package/.opencode/oh-my-design/design-md/cakeresume/.verification.md +0 -25
  82. package/.opencode/oh-my-design/design-md/cakeresume/DESIGN.md +0 -191
  83. package/.opencode/oh-my-design/design-md/cal/.verification.md +0 -145
  84. package/.opencode/oh-my-design/design-md/cal/DESIGN.md +0 -481
  85. package/.opencode/oh-my-design/design-md/cal/README.md +0 -23
  86. package/.opencode/oh-my-design/design-md/cal/preview-dark.html +0 -449
  87. package/.opencode/oh-my-design/design-md/cal/preview.html +0 -575
  88. package/.opencode/oh-my-design/design-md/catchtable/DESIGN.md +0 -341
  89. package/.opencode/oh-my-design/design-md/catchtable/_research.md +0 -54
  90. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-proof.json +0 -204
  91. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/.live-inspect-raw.json +0 -22
  92. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/fonts.json +0 -21
  93. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/structure.json +0 -42
  94. package/.opencode/oh-my-design/design-md/catchtable/assets/_reference/tokens.json +0 -95
  95. package/.opencode/oh-my-design/design-md/cathay/.verification.md +0 -44
  96. package/.opencode/oh-my-design/design-md/cathay/DESIGN.md +0 -432
  97. package/.opencode/oh-my-design/design-md/channeltalk/DESIGN.md +0 -422
  98. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/.live-inspect-proof.json +0 -320
  99. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/fonts.json +0 -53
  100. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/structure.json +0 -47
  101. package/.opencode/oh-my-design/design-md/channeltalk/assets/_reference/tokens.json +0 -78
  102. package/.opencode/oh-my-design/design-md/class101/DESIGN.md +0 -484
  103. package/.opencode/oh-my-design/design-md/classting/.verification.md +0 -32
  104. package/.opencode/oh-my-design/design-md/classting/DESIGN.md +0 -292
  105. package/.opencode/oh-my-design/design-md/classum/DESIGN.md +0 -279
  106. package/.opencode/oh-my-design/design-md/classum/assets/_reference/.live-inspect-proof.json +0 -72
  107. package/.opencode/oh-my-design/design-md/classum/assets/_reference/fonts.json +0 -20
  108. package/.opencode/oh-my-design/design-md/classum/assets/_reference/structure.json +0 -21
  109. package/.opencode/oh-my-design/design-md/classum/assets/_reference/tokens.json +0 -56
  110. package/.opencode/oh-my-design/design-md/claude/.verification.md +0 -106
  111. package/.opencode/oh-my-design/design-md/claude/DESIGN.md +0 -561
  112. package/.opencode/oh-my-design/design-md/claude/README.md +0 -24
  113. package/.opencode/oh-my-design/design-md/claude/preview-dark.html +0 -803
  114. package/.opencode/oh-my-design/design-md/claude/preview.html +0 -826
  115. package/.opencode/oh-my-design/design-md/clay/.verification.md +0 -129
  116. package/.opencode/oh-my-design/design-md/clay/DESIGN.md +0 -454
  117. package/.opencode/oh-my-design/design-md/clay/README.md +0 -23
  118. package/.opencode/oh-my-design/design-md/clay/preview-dark.html +0 -316
  119. package/.opencode/oh-my-design/design-md/clay/preview.html +0 -315
  120. package/.opencode/oh-my-design/design-md/clickhouse/.verification.md +0 -132
  121. package/.opencode/oh-my-design/design-md/clickhouse/DESIGN.md +0 -424
  122. package/.opencode/oh-my-design/design-md/clickhouse/README.md +0 -24
  123. package/.opencode/oh-my-design/design-md/clickhouse/preview-dark.html +0 -834
  124. package/.opencode/oh-my-design/design-md/clickhouse/preview.html +0 -786
  125. package/.opencode/oh-my-design/design-md/cloudflare/.verification.md +0 -21
  126. package/.opencode/oh-my-design/design-md/cloudflare/DESIGN.md +0 -637
  127. package/.opencode/oh-my-design/design-md/cohere/.verification.md +0 -136
  128. package/.opencode/oh-my-design/design-md/cohere/DESIGN.md +0 -409
  129. package/.opencode/oh-my-design/design-md/cohere/README.md +0 -24
  130. package/.opencode/oh-my-design/design-md/cohere/preview-dark.html +0 -803
  131. package/.opencode/oh-my-design/design-md/cohere/preview.html +0 -807
  132. package/.opencode/oh-my-design/design-md/coinbase/.verification.md +0 -116
  133. package/.opencode/oh-my-design/design-md/coinbase/DESIGN.md +0 -353
  134. package/.opencode/oh-my-design/design-md/coinbase/README.md +0 -23
  135. package/.opencode/oh-my-design/design-md/coinbase/preview-dark.html +0 -164
  136. package/.opencode/oh-my-design/design-md/coinbase/preview.html +0 -163
  137. package/.opencode/oh-my-design/design-md/coinone/.verification.md +0 -38
  138. package/.opencode/oh-my-design/design-md/coinone/DESIGN.md +0 -257
  139. package/.opencode/oh-my-design/design-md/composio/.verification.md +0 -143
  140. package/.opencode/oh-my-design/design-md/composio/DESIGN.md +0 -441
  141. package/.opencode/oh-my-design/design-md/composio/README.md +0 -24
  142. package/.opencode/oh-my-design/design-md/composio/preview-dark.html +0 -958
  143. package/.opencode/oh-my-design/design-md/composio/preview.html +0 -933
  144. package/.opencode/oh-my-design/design-md/cookpad/DESIGN.md +0 -394
  145. package/.opencode/oh-my-design/design-md/coupang/.verification.md +0 -141
  146. package/.opencode/oh-my-design/design-md/coupang/DESIGN.md +0 -557
  147. package/.opencode/oh-my-design/design-md/cursor/.verification.md +0 -141
  148. package/.opencode/oh-my-design/design-md/cursor/DESIGN.md +0 -460
  149. package/.opencode/oh-my-design/design-md/cursor/README.md +0 -24
  150. package/.opencode/oh-my-design/design-md/cursor/preview-dark.html +0 -393
  151. package/.opencode/oh-my-design/design-md/cursor/preview.html +0 -383
  152. package/.opencode/oh-my-design/design-md/dabang/DESIGN.md +0 -267
  153. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/.live-inspect-proof.json +0 -145
  154. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/fonts.json +0 -22
  155. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture-map.json +0 -718
  156. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/raw-capture.json +0 -1125
  157. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/structure.json +0 -53
  158. package/.opencode/oh-my-design/design-md/dabang/assets/_reference/tokens.json +0 -130
  159. package/.opencode/oh-my-design/design-md/danawa/.verification.md +0 -60
  160. package/.opencode/oh-my-design/design-md/danawa/DESIGN.md +0 -477
  161. package/.opencode/oh-my-design/design-md/dcard/.verification.md +0 -118
  162. package/.opencode/oh-my-design/design-md/dcard/DESIGN.md +0 -633
  163. package/.opencode/oh-my-design/design-md/dcard/README.md +0 -12
  164. package/.opencode/oh-my-design/design-md/dcard/_research/forum-1440px.png +0 -0
  165. package/.opencode/oh-my-design/design-md/dcard/_research.md +0 -133
  166. package/.opencode/oh-my-design/design-md/dell/.verification.md +0 -21
  167. package/.opencode/oh-my-design/design-md/dell/DESIGN.md +0 -636
  168. package/.opencode/oh-my-design/design-md/devsisters/.verification.md +0 -32
  169. package/.opencode/oh-my-design/design-md/devsisters/DESIGN.md +0 -282
  170. package/.opencode/oh-my-design/design-md/discord/.verification.md +0 -21
  171. package/.opencode/oh-my-design/design-md/discord/DESIGN.md +0 -604
  172. package/.opencode/oh-my-design/design-md/dji/DESIGN.md +0 -454
  173. package/.opencode/oh-my-design/design-md/drnow/.verification.md +0 -41
  174. package/.opencode/oh-my-design/design-md/drnow/DESIGN.md +0 -383
  175. package/.opencode/oh-my-design/design-md/dropbox/.verification.md +0 -61
  176. package/.opencode/oh-my-design/design-md/dropbox/DESIGN.md +0 -445
  177. package/.opencode/oh-my-design/design-md/duolingo/.verification.md +0 -20
  178. package/.opencode/oh-my-design/design-md/duolingo/DESIGN.md +0 -563
  179. package/.opencode/oh-my-design/design-md/elevenlabs/.verification.md +0 -128
  180. package/.opencode/oh-my-design/design-md/elevenlabs/DESIGN.md +0 -415
  181. package/.opencode/oh-my-design/design-md/elevenlabs/README.md +0 -23
  182. package/.opencode/oh-my-design/design-md/elevenlabs/preview-dark.html +0 -252
  183. package/.opencode/oh-my-design/design-md/elevenlabs/preview.html +0 -251
  184. package/.opencode/oh-my-design/design-md/expo/.verification.md +0 -141
  185. package/.opencode/oh-my-design/design-md/expo/DESIGN.md +0 -412
  186. package/.opencode/oh-my-design/design-md/expo/README.md +0 -24
  187. package/.opencode/oh-my-design/design-md/expo/preview-dark.html +0 -533
  188. package/.opencode/oh-my-design/design-md/expo/preview.html +0 -533
  189. package/.opencode/oh-my-design/design-md/fastcampus/DESIGN.md +0 -529
  190. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/.live-inspect-proof.json +0 -950
  191. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/fonts.json +0 -14
  192. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/structure.json +0 -30
  193. package/.opencode/oh-my-design/design-md/fastcampus/assets/_reference/tokens.json +0 -109
  194. package/.opencode/oh-my-design/design-md/ferrari/.verification.md +0 -119
  195. package/.opencode/oh-my-design/design-md/ferrari/DESIGN.md +0 -447
  196. package/.opencode/oh-my-design/design-md/ferrari/README.md +0 -23
  197. package/.opencode/oh-my-design/design-md/ferrari/preview-dark.html +0 -1162
  198. package/.opencode/oh-my-design/design-md/ferrari/preview.html +0 -1122
  199. package/.opencode/oh-my-design/design-md/figma/.verification.md +0 -206
  200. package/.opencode/oh-my-design/design-md/figma/DESIGN.md +0 -534
  201. package/.opencode/oh-my-design/design-md/figma/README.md +0 -24
  202. package/.opencode/oh-my-design/design-md/figma/preview-dark.html +0 -822
  203. package/.opencode/oh-my-design/design-md/figma/preview.html +0 -832
  204. package/.opencode/oh-my-design/design-md/finda/.verification.md +0 -33
  205. package/.opencode/oh-my-design/design-md/finda/DESIGN.md +0 -413
  206. package/.opencode/oh-my-design/design-md/firstory/.verification.md +0 -70
  207. package/.opencode/oh-my-design/design-md/firstory/DESIGN.md +0 -487
  208. package/.opencode/oh-my-design/design-md/flex/DESIGN.md +0 -356
  209. package/.opencode/oh-my-design/design-md/flex/_research.md +0 -49
  210. package/.opencode/oh-my-design/design-md/flex/assets/_reference/.live-inspect-proof.json +0 -192
  211. package/.opencode/oh-my-design/design-md/flex/assets/_reference/.raw-inspect.json +0 -873
  212. package/.opencode/oh-my-design/design-md/flex/assets/_reference/fonts.json +0 -17
  213. package/.opencode/oh-my-design/design-md/flex/assets/_reference/structure.json +0 -58
  214. package/.opencode/oh-my-design/design-md/flex/assets/_reference/tokens.json +0 -75
  215. package/.opencode/oh-my-design/design-md/flo/.verification.md +0 -33
  216. package/.opencode/oh-my-design/design-md/flo/DESIGN.md +0 -349
  217. package/.opencode/oh-my-design/design-md/framer/.verification.md +0 -147
  218. package/.opencode/oh-my-design/design-md/framer/DESIGN.md +0 -431
  219. package/.opencode/oh-my-design/design-md/framer/README.md +0 -23
  220. package/.opencode/oh-my-design/design-md/framer/preview-dark.html +0 -902
  221. package/.opencode/oh-my-design/design-md/framer/preview.html +0 -883
  222. package/.opencode/oh-my-design/design-md/freee/.verification.md +0 -145
  223. package/.opencode/oh-my-design/design-md/freee/DESIGN.md +0 -620
  224. package/.opencode/oh-my-design/design-md/freee/README.md +0 -12
  225. package/.opencode/oh-my-design/design-md/freee/_research/vibes-storybook-1440px.png +0 -0
  226. package/.opencode/oh-my-design/design-md/freee/_research.md +0 -116
  227. package/.opencode/oh-my-design/design-md/fugle/.verification.md +0 -40
  228. package/.opencode/oh-my-design/design-md/fugle/DESIGN.md +0 -290
  229. package/.opencode/oh-my-design/design-md/funnow/.verification.md +0 -62
  230. package/.opencode/oh-my-design/design-md/funnow/DESIGN.md +0 -431
  231. package/.opencode/oh-my-design/design-md/gangnamunni/DESIGN.md +0 -677
  232. package/.opencode/oh-my-design/design-md/gangnamunni/_promo.json +0 -26
  233. package/.opencode/oh-my-design/design-md/gangnamunni/_research.md +0 -113
  234. package/.opencode/oh-my-design/design-md/genie/.verification.md +0 -29
  235. package/.opencode/oh-my-design/design-md/genie/DESIGN.md +0 -415
  236. package/.opencode/oh-my-design/design-md/github/.verification.md +0 -21
  237. package/.opencode/oh-my-design/design-md/github/DESIGN.md +0 -727
  238. package/.opencode/oh-my-design/design-md/gmarket/DESIGN.md +0 -534
  239. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/.live-inspect-proof.json +0 -217
  240. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/fonts.json +0 -41
  241. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-bestsellers.json +0 -1929
  242. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/raw-capture-home.json +0 -3675
  243. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/structure.json +0 -65
  244. package/.opencode/oh-my-design/design-md/gmarket/assets/_reference/tokens.json +0 -210
  245. package/.opencode/oh-my-design/design-md/gogolook/.verification.md +0 -31
  246. package/.opencode/oh-my-design/design-md/gogolook/DESIGN.md +0 -155
  247. package/.opencode/oh-my-design/design-md/gogoro/DESIGN.md +0 -441
  248. package/.opencode/oh-my-design/design-md/google/.verification.md +0 -61
  249. package/.opencode/oh-my-design/design-md/google/DESIGN.md +0 -499
  250. package/.opencode/oh-my-design/design-md/greenvines/.verification.md +0 -72
  251. package/.opencode/oh-my-design/design-md/greenvines/DESIGN.md +0 -454
  252. package/.opencode/oh-my-design/design-md/greeting/.verification.md +0 -64
  253. package/.opencode/oh-my-design/design-md/greeting/DESIGN.md +0 -462
  254. package/.opencode/oh-my-design/design-md/grip/.verification.md +0 -36
  255. package/.opencode/oh-my-design/design-md/grip/DESIGN.md +0 -289
  256. package/.opencode/oh-my-design/design-md/hahow/.verification.md +0 -31
  257. package/.opencode/oh-my-design/design-md/hahow/DESIGN.md +0 -184
  258. package/.opencode/oh-my-design/design-md/hashicorp/.verification.md +0 -142
  259. package/.opencode/oh-my-design/design-md/hashicorp/DESIGN.md +0 -411
  260. package/.opencode/oh-my-design/design-md/hashicorp/README.md +0 -24
  261. package/.opencode/oh-my-design/design-md/hashicorp/preview-dark.html +0 -1202
  262. package/.opencode/oh-my-design/design-md/hashicorp/preview.html +0 -1193
  263. package/.opencode/oh-my-design/design-md/hogangnono/.verification.md +0 -33
  264. package/.opencode/oh-my-design/design-md/hogangnono/DESIGN.md +0 -349
  265. package/.opencode/oh-my-design/design-md/hp/.verification.md +0 -21
  266. package/.opencode/oh-my-design/design-md/hp/DESIGN.md +0 -563
  267. package/.opencode/oh-my-design/design-md/hyperconnect/.verification.md +0 -40
  268. package/.opencode/oh-my-design/design-md/hyperconnect/DESIGN.md +0 -393
  269. package/.opencode/oh-my-design/design-md/hyundaicard/.verification.md +0 -25
  270. package/.opencode/oh-my-design/design-md/hyundaicard/DESIGN.md +0 -201
  271. package/.opencode/oh-my-design/design-md/ibm/.verification.md +0 -102
  272. package/.opencode/oh-my-design/design-md/ibm/DESIGN.md +0 -464
  273. package/.opencode/oh-my-design/design-md/ibm/README.md +0 -24
  274. package/.opencode/oh-my-design/design-md/ibm/preview-dark.html +0 -443
  275. package/.opencode/oh-my-design/design-md/ibm/preview.html +0 -428
  276. package/.opencode/oh-my-design/design-md/ichef/DESIGN.md +0 -455
  277. package/.opencode/oh-my-design/design-md/ikala/.verification.md +0 -35
  278. package/.opencode/oh-my-design/design-md/ikala/DESIGN.md +0 -400
  279. package/.opencode/oh-my-design/design-md/imweb/.verification.md +0 -61
  280. package/.opencode/oh-my-design/design-md/imweb/DESIGN.md +0 -460
  281. package/.opencode/oh-my-design/design-md/inflearn/DESIGN.md +0 -453
  282. package/.opencode/oh-my-design/design-md/inflearn/_promo.json +0 -29
  283. package/.opencode/oh-my-design/design-md/inflearn/_research.md +0 -85
  284. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof-courses.json +0 -679
  285. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/.live-inspect-proof.json +0 -448
  286. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/fonts.json +0 -41
  287. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/structure.json +0 -110
  288. package/.opencode/oh-my-design/design-md/inflearn/assets/_reference/tokens.json +0 -54
  289. package/.opencode/oh-my-design/design-md/intercom/.verification.md +0 -144
  290. package/.opencode/oh-my-design/design-md/intercom/DESIGN.md +0 -271
  291. package/.opencode/oh-my-design/design-md/intercom/README.md +0 -23
  292. package/.opencode/oh-my-design/design-md/intercom/preview-dark.html +0 -185
  293. package/.opencode/oh-my-design/design-md/intercom/preview.html +0 -184
  294. package/.opencode/oh-my-design/design-md/jandi/.verification.md +0 -26
  295. package/.opencode/oh-my-design/design-md/jandi/DESIGN.md +0 -382
  296. package/.opencode/oh-my-design/design-md/jkopay/.verification.md +0 -32
  297. package/.opencode/oh-my-design/design-md/jkopay/DESIGN.md +0 -283
  298. package/.opencode/oh-my-design/design-md/jobkorea/.verification.md +0 -30
  299. package/.opencode/oh-my-design/design-md/jobkorea/DESIGN.md +0 -349
  300. package/.opencode/oh-my-design/design-md/jumpit/DESIGN.md +0 -403
  301. package/.opencode/oh-my-design/design-md/jumpit/_research.md +0 -119
  302. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/.live-inspect-proof.json +0 -182
  303. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/fonts.json +0 -20
  304. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/structure.json +0 -66
  305. package/.opencode/oh-my-design/design-md/jumpit/assets/_reference/tokens.json +0 -108
  306. package/.opencode/oh-my-design/design-md/kakao/.verification.md +0 -137
  307. package/.opencode/oh-my-design/design-md/kakao/DESIGN.md +0 -568
  308. package/.opencode/oh-my-design/design-md/kakao/README.md +0 -18
  309. package/.opencode/oh-my-design/design-md/kakao/_research.md +0 -98
  310. package/.opencode/oh-my-design/design-md/kakaobank/.verification.md +0 -133
  311. package/.opencode/oh-my-design/design-md/kakaobank/DESIGN.md +0 -602
  312. package/.opencode/oh-my-design/design-md/kakaopay/DESIGN.md +0 -603
  313. package/.opencode/oh-my-design/design-md/kakaopay/_promo.json +0 -22
  314. package/.opencode/oh-my-design/design-md/kakaopay/_research.md +0 -84
  315. package/.opencode/oh-my-design/design-md/kakaot/DESIGN.md +0 -507
  316. package/.opencode/oh-my-design/design-md/karrot/.verification.md +0 -143
  317. package/.opencode/oh-my-design/design-md/karrot/DESIGN.md +0 -494
  318. package/.opencode/oh-my-design/design-md/karrot/README.md +0 -18
  319. package/.opencode/oh-my-design/design-md/karrot/_research.md +0 -57
  320. package/.opencode/oh-my-design/design-md/kbank/DESIGN.md +0 -252
  321. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-proof.json +0 -215
  322. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/.live-inspect-raw.json +0 -1
  323. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/fonts.json +0 -20
  324. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/structure.json +0 -151
  325. package/.opencode/oh-my-design/design-md/kbank/assets/_reference/tokens.json +0 -101
  326. package/.opencode/oh-my-design/design-md/kdan/.verification.md +0 -30
  327. package/.opencode/oh-my-design/design-md/kdan/DESIGN.md +0 -193
  328. package/.opencode/oh-my-design/design-md/kintone/.verification.md +0 -21
  329. package/.opencode/oh-my-design/design-md/kintone/DESIGN.md +0 -586
  330. package/.opencode/oh-my-design/design-md/kkbox/.verification.md +0 -27
  331. package/.opencode/oh-my-design/design-md/kkbox/DESIGN.md +0 -136
  332. package/.opencode/oh-my-design/design-md/kkday/DESIGN.md +0 -470
  333. package/.opencode/oh-my-design/design-md/kmong/.verification.md +0 -30
  334. package/.opencode/oh-my-design/design-md/kmong/DESIGN.md +0 -427
  335. package/.opencode/oh-my-design/design-md/krafton/.verification.md +0 -38
  336. package/.opencode/oh-my-design/design-md/krafton/DESIGN.md +0 -267
  337. package/.opencode/oh-my-design/design-md/kraken/.verification.md +0 -143
  338. package/.opencode/oh-my-design/design-md/kraken/DESIGN.md +0 -277
  339. package/.opencode/oh-my-design/design-md/kraken/README.md +0 -23
  340. package/.opencode/oh-my-design/design-md/kraken/preview-dark.html +0 -169
  341. package/.opencode/oh-my-design/design-md/kraken/preview.html +0 -168
  342. package/.opencode/oh-my-design/design-md/krds/.verification.md +0 -373
  343. package/.opencode/oh-my-design/design-md/krds/DESIGN.md +0 -1060
  344. package/.opencode/oh-my-design/design-md/kream/DESIGN.md +0 -432
  345. package/.opencode/oh-my-design/design-md/kream/assets/_reference/.live-inspect-proof.json +0 -289
  346. package/.opencode/oh-my-design/design-md/kream/assets/_reference/fonts.json +0 -26
  347. package/.opencode/oh-my-design/design-md/kream/assets/_reference/structure.json +0 -56
  348. package/.opencode/oh-my-design/design-md/kream/assets/_reference/tokens.json +0 -154
  349. package/.opencode/oh-my-design/design-md/kurly/.verification.md +0 -126
  350. package/.opencode/oh-my-design/design-md/kurly/DESIGN.md +0 -620
  351. package/.opencode/oh-my-design/design-md/laftel/.verification.md +0 -39
  352. package/.opencode/oh-my-design/design-md/laftel/DESIGN.md +0 -293
  353. package/.opencode/oh-my-design/design-md/lamborghini/.verification.md +0 -127
  354. package/.opencode/oh-my-design/design-md/lamborghini/DESIGN.md +0 -430
  355. package/.opencode/oh-my-design/design-md/lamborghini/README.md +0 -23
  356. package/.opencode/oh-my-design/design-md/lamborghini/preview-dark.html +0 -303
  357. package/.opencode/oh-my-design/design-md/lamborghini/preview.html +0 -381
  358. package/.opencode/oh-my-design/design-md/laundrygo/.verification.md +0 -60
  359. package/.opencode/oh-my-design/design-md/laundrygo/DESIGN.md +0 -434
  360. package/.opencode/oh-my-design/design-md/layerx/.verification.md +0 -21
  361. package/.opencode/oh-my-design/design-md/layerx/DESIGN.md +0 -615
  362. package/.opencode/oh-my-design/design-md/lezhin/.verification.md +0 -47
  363. package/.opencode/oh-my-design/design-md/lezhin/DESIGN.md +0 -348
  364. package/.opencode/oh-my-design/design-md/line/.verification.md +0 -137
  365. package/.opencode/oh-my-design/design-md/line/DESIGN.md +0 -467
  366. package/.opencode/oh-my-design/design-md/line/README.md +0 -12
  367. package/.opencode/oh-my-design/design-md/line/_research/home-1440px.png +0 -0
  368. package/.opencode/oh-my-design/design-md/line/_research.md +0 -65
  369. package/.opencode/oh-my-design/design-md/linear.app/.verification.md +0 -143
  370. package/.opencode/oh-my-design/design-md/linear.app/DESIGN.md +0 -642
  371. package/.opencode/oh-my-design/design-md/linear.app/README.md +0 -24
  372. package/.opencode/oh-my-design/design-md/linear.app/preview-dark.html +0 -383
  373. package/.opencode/oh-my-design/design-md/linear.app/preview.html +0 -373
  374. package/.opencode/oh-my-design/design-md/loom/.verification.md +0 -31
  375. package/.opencode/oh-my-design/design-md/loom/DESIGN.md +0 -396
  376. package/.opencode/oh-my-design/design-md/lovable/.verification.md +0 -154
  377. package/.opencode/oh-my-design/design-md/lovable/DESIGN.md +0 -423
  378. package/.opencode/oh-my-design/design-md/lovable/README.md +0 -24
  379. package/.opencode/oh-my-design/design-md/lovable/preview-dark.html +0 -349
  380. package/.opencode/oh-my-design/design-md/lovable/preview.html +0 -348
  381. package/.opencode/oh-my-design/design-md/lunit/DESIGN.md +0 -296
  382. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/.live-inspect-proof.json +0 -249
  383. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/fonts.json +0 -24
  384. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/structure.json +0 -162
  385. package/.opencode/oh-my-design/design-md/lunit/assets/_reference/tokens.json +0 -115
  386. package/.opencode/oh-my-design/design-md/mastercard/.verification.md +0 -19
  387. package/.opencode/oh-my-design/design-md/mastercard/DESIGN.md +0 -587
  388. package/.opencode/oh-my-design/design-md/meituan/DESIGN.md +0 -466
  389. package/.opencode/oh-my-design/design-md/melon/.verification.md +0 -27
  390. package/.opencode/oh-my-design/design-md/melon/DESIGN.md +0 -179
  391. package/.opencode/oh-my-design/design-md/mercari/.verification.md +0 -155
  392. package/.opencode/oh-my-design/design-md/mercari/DESIGN.md +0 -514
  393. package/.opencode/oh-my-design/design-md/mercari/README.md +0 -12
  394. package/.opencode/oh-my-design/design-md/mercari/_research/home-1440px.png +0 -0
  395. package/.opencode/oh-my-design/design-md/mercari/_research.md +0 -137
  396. package/.opencode/oh-my-design/design-md/mercury/.verification.md +0 -21
  397. package/.opencode/oh-my-design/design-md/mercury/DESIGN.md +0 -589
  398. package/.opencode/oh-my-design/design-md/meta/.verification.md +0 -21
  399. package/.opencode/oh-my-design/design-md/meta/DESIGN.md +0 -615
  400. package/.opencode/oh-my-design/design-md/microsoft/.verification.md +0 -62
  401. package/.opencode/oh-my-design/design-md/microsoft/DESIGN.md +0 -508
  402. package/.opencode/oh-my-design/design-md/millie/DESIGN.md +0 -584
  403. package/.opencode/oh-my-design/design-md/minimax/.verification.md +0 -135
  404. package/.opencode/oh-my-design/design-md/minimax/DESIGN.md +0 -396
  405. package/.opencode/oh-my-design/design-md/minimax/README.md +0 -24
  406. package/.opencode/oh-my-design/design-md/minimax/preview-dark.html +0 -1262
  407. package/.opencode/oh-my-design/design-md/minimax/preview.html +0 -1248
  408. package/.opencode/oh-my-design/design-md/mintlify/.verification.md +0 -160
  409. package/.opencode/oh-my-design/design-md/mintlify/DESIGN.md +0 -472
  410. package/.opencode/oh-my-design/design-md/mintlify/README.md +0 -24
  411. package/.opencode/oh-my-design/design-md/mintlify/preview-dark.html +0 -409
  412. package/.opencode/oh-my-design/design-md/mintlify/preview.html +0 -398
  413. package/.opencode/oh-my-design/design-md/miricanvas/.verification.md +0 -61
  414. package/.opencode/oh-my-design/design-md/miricanvas/DESIGN.md +0 -464
  415. package/.opencode/oh-my-design/design-md/miro/.verification.md +0 -138
  416. package/.opencode/oh-my-design/design-md/miro/DESIGN.md +0 -319
  417. package/.opencode/oh-my-design/design-md/miro/README.md +0 -23
  418. package/.opencode/oh-my-design/design-md/miro/preview-dark.html +0 -174
  419. package/.opencode/oh-my-design/design-md/miro/preview.html +0 -173
  420. package/.opencode/oh-my-design/design-md/mistral.ai/.verification.md +0 -146
  421. package/.opencode/oh-my-design/design-md/mistral.ai/DESIGN.md +0 -390
  422. package/.opencode/oh-my-design/design-md/mistral.ai/README.md +0 -24
  423. package/.opencode/oh-my-design/design-md/mistral.ai/preview-dark.html +0 -806
  424. package/.opencode/oh-my-design/design-md/mistral.ai/preview.html +0 -805
  425. package/.opencode/oh-my-design/design-md/modusign/.verification.md +0 -58
  426. package/.opencode/oh-my-design/design-md/modusign/DESIGN.md +0 -524
  427. package/.opencode/oh-my-design/design-md/momoshop/.verification.md +0 -36
  428. package/.opencode/oh-my-design/design-md/momoshop/DESIGN.md +0 -322
  429. package/.opencode/oh-my-design/design-md/money-forward/DESIGN.md +0 -443
  430. package/.opencode/oh-my-design/design-md/mongodb/.verification.md +0 -145
  431. package/.opencode/oh-my-design/design-md/mongodb/DESIGN.md +0 -401
  432. package/.opencode/oh-my-design/design-md/mongodb/README.md +0 -23
  433. package/.opencode/oh-my-design/design-md/mongodb/preview-dark.html +0 -260
  434. package/.opencode/oh-my-design/design-md/mongodb/preview.html +0 -259
  435. package/.opencode/oh-my-design/design-md/muji/.verification.md +0 -20
  436. package/.opencode/oh-my-design/design-md/muji/DESIGN.md +0 -605
  437. package/.opencode/oh-my-design/design-md/musinsa/.verification.md +0 -59
  438. package/.opencode/oh-my-design/design-md/musinsa/DESIGN.md +0 -593
  439. package/.opencode/oh-my-design/design-md/mustit/.verification.md +0 -37
  440. package/.opencode/oh-my-design/design-md/mustit/DESIGN.md +0 -328
  441. package/.opencode/oh-my-design/design-md/myrealtrip/DESIGN.md +0 -494
  442. package/.opencode/oh-my-design/design-md/naver/.verification.md +0 -134
  443. package/.opencode/oh-my-design/design-md/naver/DESIGN.md +0 -582
  444. package/.opencode/oh-my-design/design-md/naverwebtoon/DESIGN.md +0 -477
  445. package/.opencode/oh-my-design/design-md/netflix/.verification.md +0 -21
  446. package/.opencode/oh-my-design/design-md/netflix/DESIGN.md +0 -572
  447. package/.opencode/oh-my-design/design-md/nexon/.verification.md +0 -27
  448. package/.opencode/oh-my-design/design-md/nexon/DESIGN.md +0 -389
  449. package/.opencode/oh-my-design/design-md/nhncloud/.verification.md +0 -23
  450. package/.opencode/oh-my-design/design-md/nhncloud/DESIGN.md +0 -207
  451. package/.opencode/oh-my-design/design-md/nike/.verification.md +0 -21
  452. package/.opencode/oh-my-design/design-md/nike/DESIGN.md +0 -588
  453. package/.opencode/oh-my-design/design-md/note/DESIGN.md +0 -346
  454. package/.opencode/oh-my-design/design-md/notion/.verification.md +0 -141
  455. package/.opencode/oh-my-design/design-md/notion/DESIGN.md +0 -557
  456. package/.opencode/oh-my-design/design-md/notion/README.md +0 -24
  457. package/.opencode/oh-my-design/design-md/notion/preview-dark.html +0 -372
  458. package/.opencode/oh-my-design/design-md/notion/preview.html +0 -364
  459. package/.opencode/oh-my-design/design-md/nvidia/.verification.md +0 -127
  460. package/.opencode/oh-my-design/design-md/nvidia/DESIGN.md +0 -550
  461. package/.opencode/oh-my-design/design-md/nvidia/README.md +0 -24
  462. package/.opencode/oh-my-design/design-md/nvidia/_research.md +0 -68
  463. package/.opencode/oh-my-design/design-md/nvidia/preview-dark.html +0 -374
  464. package/.opencode/oh-my-design/design-md/nvidia/preview.html +0 -366
  465. package/.opencode/oh-my-design/design-md/ohouse/.verification.md +0 -87
  466. package/.opencode/oh-my-design/design-md/ohouse/DESIGN.md +0 -635
  467. package/.opencode/oh-my-design/design-md/oliveyoung/DESIGN.md +0 -407
  468. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/.live-inspect-proof.json +0 -158
  469. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_best_capture.json +0 -644
  470. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_detail_capture.json +0 -447
  471. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main.html +0 -419
  472. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_main_capture.json +0 -1126
  473. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/_search_capture.json +0 -912
  474. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/fonts.json +0 -20
  475. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/structure.json +0 -91
  476. package/.opencode/oh-my-design/design-md/oliveyoung/assets/_reference/tokens.json +0 -79
  477. package/.opencode/oh-my-design/design-md/ollama/.verification.md +0 -138
  478. package/.opencode/oh-my-design/design-md/ollama/DESIGN.md +0 -393
  479. package/.opencode/oh-my-design/design-md/ollama/README.md +0 -24
  480. package/.opencode/oh-my-design/design-md/ollama/preview-dark.html +0 -678
  481. package/.opencode/oh-my-design/design-md/ollama/preview.html +0 -678
  482. package/.opencode/oh-my-design/design-md/omnichat/.verification.md +0 -74
  483. package/.opencode/oh-my-design/design-md/omnichat/DESIGN.md +0 -499
  484. package/.opencode/oh-my-design/design-md/openai/.verification.md +0 -21
  485. package/.opencode/oh-my-design/design-md/openai/DESIGN.md +0 -641
  486. package/.opencode/oh-my-design/design-md/opencode.ai/.verification.md +0 -136
  487. package/.opencode/oh-my-design/design-md/opencode.ai/DESIGN.md +0 -425
  488. package/.opencode/oh-my-design/design-md/opencode.ai/README.md +0 -24
  489. package/.opencode/oh-my-design/design-md/opencode.ai/preview-dark.html +0 -366
  490. package/.opencode/oh-my-design/design-md/opencode.ai/preview.html +0 -357
  491. package/.opencode/oh-my-design/design-md/payco/.verification.md +0 -28
  492. package/.opencode/oh-my-design/design-md/payco/DESIGN.md +0 -267
  493. package/.opencode/oh-my-design/design-md/paypay/.verification.md +0 -21
  494. package/.opencode/oh-my-design/design-md/paypay/DESIGN.md +0 -656
  495. package/.opencode/oh-my-design/design-md/pchome/.verification.md +0 -38
  496. package/.opencode/oh-my-design/design-md/pchome/DESIGN.md +0 -439
  497. package/.opencode/oh-my-design/design-md/perplexity/.verification.md +0 -21
  498. package/.opencode/oh-my-design/design-md/perplexity/DESIGN.md +0 -546
  499. package/.opencode/oh-my-design/design-md/piccollage/.verification.md +0 -34
  500. package/.opencode/oh-my-design/design-md/piccollage/DESIGN.md +0 -320
  501. package/.opencode/oh-my-design/design-md/pinkoi/.verification.md +0 -147
  502. package/.opencode/oh-my-design/design-md/pinkoi/DESIGN.md +0 -639
  503. package/.opencode/oh-my-design/design-md/pinkoi/README.md +0 -12
  504. package/.opencode/oh-my-design/design-md/pinkoi/_research/browse-1440px.png +0 -0
  505. package/.opencode/oh-my-design/design-md/pinkoi/_research.md +0 -167
  506. package/.opencode/oh-my-design/design-md/pinterest/.verification.md +0 -141
  507. package/.opencode/oh-my-design/design-md/pinterest/DESIGN.md +0 -366
  508. package/.opencode/oh-my-design/design-md/pinterest/README.md +0 -23
  509. package/.opencode/oh-my-design/design-md/pinterest/preview-dark.html +0 -233
  510. package/.opencode/oh-my-design/design-md/pinterest/preview.html +0 -232
  511. package/.opencode/oh-my-design/design-md/pixiv/.verification.md +0 -20
  512. package/.opencode/oh-my-design/design-md/pixiv/DESIGN.md +0 -613
  513. package/.opencode/oh-my-design/design-md/pixnet/.verification.md +0 -31
  514. package/.opencode/oh-my-design/design-md/pixnet/DESIGN.md +0 -430
  515. package/.opencode/oh-my-design/design-md/posthog/.verification.md +0 -159
  516. package/.opencode/oh-my-design/design-md/posthog/DESIGN.md +0 -480
  517. package/.opencode/oh-my-design/design-md/posthog/README.md +0 -23
  518. package/.opencode/oh-my-design/design-md/posthog/preview-dark.html +0 -699
  519. package/.opencode/oh-my-design/design-md/posthog/preview.html +0 -749
  520. package/.opencode/oh-my-design/design-md/postype/.verification.md +0 -61
  521. package/.opencode/oh-my-design/design-md/postype/DESIGN.md +0 -431
  522. package/.opencode/oh-my-design/design-md/publy/DESIGN.md +0 -563
  523. package/.opencode/oh-my-design/design-md/qanda/.verification.md +0 -121
  524. package/.opencode/oh-my-design/design-md/qanda/DESIGN.md +0 -516
  525. package/.opencode/oh-my-design/design-md/ragic/.verification.md +0 -37
  526. package/.opencode/oh-my-design/design-md/ragic/DESIGN.md +0 -444
  527. package/.opencode/oh-my-design/design-md/rakuten/.verification.md +0 -60
  528. package/.opencode/oh-my-design/design-md/rakuten/DESIGN.md +0 -440
  529. package/.opencode/oh-my-design/design-md/ramp/.verification.md +0 -21
  530. package/.opencode/oh-my-design/design-md/ramp/DESIGN.md +0 -634
  531. package/.opencode/oh-my-design/design-md/rayark/.verification.md +0 -22
  532. package/.opencode/oh-my-design/design-md/rayark/DESIGN.md +0 -154
  533. package/.opencode/oh-my-design/design-md/raycast/.verification.md +0 -138
  534. package/.opencode/oh-my-design/design-md/raycast/DESIGN.md +0 -467
  535. package/.opencode/oh-my-design/design-md/raycast/README.md +0 -23
  536. package/.opencode/oh-my-design/design-md/raycast/preview-dark.html +0 -606
  537. package/.opencode/oh-my-design/design-md/raycast/preview.html +0 -688
  538. package/.opencode/oh-my-design/design-md/remember/.verification.md +0 -135
  539. package/.opencode/oh-my-design/design-md/remember/DESIGN.md +0 -504
  540. package/.opencode/oh-my-design/design-md/remember/_promo.json +0 -27
  541. package/.opencode/oh-my-design/design-md/remember/_research.md +0 -90
  542. package/.opencode/oh-my-design/design-md/renault/.verification.md +0 -139
  543. package/.opencode/oh-my-design/design-md/renault/DESIGN.md +0 -439
  544. package/.opencode/oh-my-design/design-md/renault/README.md +0 -23
  545. package/.opencode/oh-my-design/design-md/renault/preview-dark.html +0 -406
  546. package/.opencode/oh-my-design/design-md/renault/preview.html +0 -606
  547. package/.opencode/oh-my-design/design-md/replicate/.verification.md +0 -154
  548. package/.opencode/oh-my-design/design-md/replicate/DESIGN.md +0 -387
  549. package/.opencode/oh-my-design/design-md/replicate/README.md +0 -24
  550. package/.opencode/oh-my-design/design-md/replicate/preview-dark.html +0 -828
  551. package/.opencode/oh-my-design/design-md/replicate/preview.html +0 -831
  552. package/.opencode/oh-my-design/design-md/resend/.verification.md +0 -143
  553. package/.opencode/oh-my-design/design-md/resend/DESIGN.md +0 -440
  554. package/.opencode/oh-my-design/design-md/resend/README.md +0 -23
  555. package/.opencode/oh-my-design/design-md/resend/preview-dark.html +0 -355
  556. package/.opencode/oh-my-design/design-md/resend/preview.html +0 -354
  557. package/.opencode/oh-my-design/design-md/retool/.verification.md +0 -21
  558. package/.opencode/oh-my-design/design-md/retool/DESIGN.md +0 -645
  559. package/.opencode/oh-my-design/design-md/revolut/.verification.md +0 -140
  560. package/.opencode/oh-my-design/design-md/revolut/DESIGN.md +0 -319
  561. package/.opencode/oh-my-design/design-md/revolut/README.md +0 -23
  562. package/.opencode/oh-my-design/design-md/revolut/preview-dark.html +0 -234
  563. package/.opencode/oh-my-design/design-md/revolut/preview.html +0 -233
  564. package/.opencode/oh-my-design/design-md/richart/.verification.md +0 -41
  565. package/.opencode/oh-my-design/design-md/richart/DESIGN.md +0 -465
  566. package/.opencode/oh-my-design/design-md/ridi/.verification.md +0 -108
  567. package/.opencode/oh-my-design/design-md/ridi/DESIGN.md +0 -573
  568. package/.opencode/oh-my-design/design-md/riiid/.verification.md +0 -33
  569. package/.opencode/oh-my-design/design-md/riiid/DESIGN.md +0 -260
  570. package/.opencode/oh-my-design/design-md/ringle/.verification.md +0 -53
  571. package/.opencode/oh-my-design/design-md/ringle/DESIGN.md +0 -444
  572. package/.opencode/oh-my-design/design-md/robinhood/.verification.md +0 -21
  573. package/.opencode/oh-my-design/design-md/robinhood/DESIGN.md +0 -604
  574. package/.opencode/oh-my-design/design-md/runwayml/.verification.md +0 -141
  575. package/.opencode/oh-my-design/design-md/runwayml/DESIGN.md +0 -431
  576. package/.opencode/oh-my-design/design-md/runwayml/README.md +0 -24
  577. package/.opencode/oh-my-design/design-md/runwayml/preview-dark.html +0 -664
  578. package/.opencode/oh-my-design/design-md/runwayml/preview.html +0 -665
  579. package/.opencode/oh-my-design/design-md/salesforce/.verification.md +0 -66
  580. package/.opencode/oh-my-design/design-md/salesforce/DESIGN.md +0 -473
  581. package/.opencode/oh-my-design/design-md/sanity/.verification.md +0 -174
  582. package/.opencode/oh-my-design/design-md/sanity/DESIGN.md +0 -499
  583. package/.opencode/oh-my-design/design-md/sanity/README.md +0 -24
  584. package/.opencode/oh-my-design/design-md/sanity/preview-dark.html +0 -990
  585. package/.opencode/oh-my-design/design-md/sanity/preview.html +0 -1135
  586. package/.opencode/oh-my-design/design-md/sansan/.verification.md +0 -21
  587. package/.opencode/oh-my-design/design-md/sansan/DESIGN.md +0 -631
  588. package/.opencode/oh-my-design/design-md/sendbird/.verification.md +0 -67
  589. package/.opencode/oh-my-design/design-md/sendbird/DESIGN.md +0 -331
  590. package/.opencode/oh-my-design/design-md/sentry/.verification.md +0 -157
  591. package/.opencode/oh-my-design/design-md/sentry/DESIGN.md +0 -397
  592. package/.opencode/oh-my-design/design-md/sentry/README.md +0 -24
  593. package/.opencode/oh-my-design/design-md/sentry/preview-dark.html +0 -626
  594. package/.opencode/oh-my-design/design-md/sentry/preview.html +0 -951
  595. package/.opencode/oh-my-design/design-md/shinhancard/.verification.md +0 -31
  596. package/.opencode/oh-my-design/design-md/shinhancard/DESIGN.md +0 -421
  597. package/.opencode/oh-my-design/design-md/shopline/.verification.md +0 -34
  598. package/.opencode/oh-my-design/design-md/shopline/DESIGN.md +0 -431
  599. package/.opencode/oh-my-design/design-md/slack/.verification.md +0 -21
  600. package/.opencode/oh-my-design/design-md/slack/DESIGN.md +0 -635
  601. package/.opencode/oh-my-design/design-md/smarthr/DESIGN.md +0 -452
  602. package/.opencode/oh-my-design/design-md/smartnews/DESIGN.md +0 -360
  603. package/.opencode/oh-my-design/design-md/socar/DESIGN.md +0 -438
  604. package/.opencode/oh-my-design/design-md/socar/_promo.json +0 -28
  605. package/.opencode/oh-my-design/design-md/socar/_research.md +0 -55
  606. package/.opencode/oh-my-design/design-md/soomgo/.verification.md +0 -27
  607. package/.opencode/oh-my-design/design-md/soomgo/DESIGN.md +0 -326
  608. package/.opencode/oh-my-design/design-md/spacex/.verification.md +0 -132
  609. package/.opencode/oh-my-design/design-md/spacex/DESIGN.md +0 -415
  610. package/.opencode/oh-my-design/design-md/spacex/README.md +0 -23
  611. package/.opencode/oh-my-design/design-md/spacex/_research.md +0 -69
  612. package/.opencode/oh-my-design/design-md/spacex/preview-dark.html +0 -221
  613. package/.opencode/oh-my-design/design-md/spacex/preview.html +0 -220
  614. package/.opencode/oh-my-design/design-md/spoon/DESIGN.md +0 -492
  615. package/.opencode/oh-my-design/design-md/spotify/.verification.md +0 -128
  616. package/.opencode/oh-my-design/design-md/spotify/DESIGN.md +0 -489
  617. package/.opencode/oh-my-design/design-md/spotify/README.md +0 -23
  618. package/.opencode/oh-my-design/design-md/spotify/preview-dark.html +0 -231
  619. package/.opencode/oh-my-design/design-md/spotify/preview.html +0 -230
  620. package/.opencode/oh-my-design/design-md/starbucks/.verification.md +0 -21
  621. package/.opencode/oh-my-design/design-md/starbucks/DESIGN.md +0 -597
  622. package/.opencode/oh-my-design/design-md/stores/.verification.md +0 -61
  623. package/.opencode/oh-my-design/design-md/stores/DESIGN.md +0 -447
  624. package/.opencode/oh-my-design/design-md/stripe/.verification.md +0 -140
  625. package/.opencode/oh-my-design/design-md/stripe/DESIGN.md +0 -571
  626. package/.opencode/oh-my-design/design-md/stripe/README.md +0 -24
  627. package/.opencode/oh-my-design/design-md/stripe/preview-dark.html +0 -428
  628. package/.opencode/oh-my-design/design-md/stripe/preview.html +0 -419
  629. package/.opencode/oh-my-design/design-md/studio/.verification.md +0 -21
  630. package/.opencode/oh-my-design/design-md/studio/DESIGN.md +0 -602
  631. package/.opencode/oh-my-design/design-md/supabase/.verification.md +0 -145
  632. package/.opencode/oh-my-design/design-md/supabase/DESIGN.md +0 -389
  633. package/.opencode/oh-my-design/design-md/supabase/README.md +0 -24
  634. package/.opencode/oh-my-design/design-md/supabase/preview-dark.html +0 -977
  635. package/.opencode/oh-my-design/design-md/supabase/preview.html +0 -955
  636. package/.opencode/oh-my-design/design-md/superhuman/.verification.md +0 -184
  637. package/.opencode/oh-my-design/design-md/superhuman/DESIGN.md +0 -453
  638. package/.opencode/oh-my-design/design-md/superhuman/README.md +0 -23
  639. package/.opencode/oh-my-design/design-md/superhuman/preview-dark.html +0 -973
  640. package/.opencode/oh-my-design/design-md/superhuman/preview.html +0 -951
  641. package/.opencode/oh-my-design/design-md/surveycake/.verification.md +0 -31
  642. package/.opencode/oh-my-design/design-md/surveycake/DESIGN.md +0 -442
  643. package/.opencode/oh-my-design/design-md/tada/DESIGN.md +0 -579
  644. package/.opencode/oh-my-design/design-md/teamblind/.verification.md +0 -76
  645. package/.opencode/oh-my-design/design-md/teamblind/DESIGN.md +0 -497
  646. package/.opencode/oh-my-design/design-md/tesla/.verification.md +0 -149
  647. package/.opencode/oh-my-design/design-md/tesla/DESIGN.md +0 -501
  648. package/.opencode/oh-my-design/design-md/tesla/README.md +0 -23
  649. package/.opencode/oh-my-design/design-md/tesla/_research.md +0 -70
  650. package/.opencode/oh-my-design/design-md/tesla/preview-dark.html +0 -947
  651. package/.opencode/oh-my-design/design-md/tesla/preview.html +0 -925
  652. package/.opencode/oh-my-design/design-md/theverge/.verification.md +0 -21
  653. package/.opencode/oh-my-design/design-md/theverge/DESIGN.md +0 -500
  654. package/.opencode/oh-my-design/design-md/timee/.verification.md +0 -67
  655. package/.opencode/oh-my-design/design-md/timee/DESIGN.md +0 -444
  656. package/.opencode/oh-my-design/design-md/together.ai/.verification.md +0 -145
  657. package/.opencode/oh-my-design/design-md/together.ai/DESIGN.md +0 -389
  658. package/.opencode/oh-my-design/design-md/together.ai/README.md +0 -24
  659. package/.opencode/oh-my-design/design-md/together.ai/preview-dark.html +0 -892
  660. package/.opencode/oh-my-design/design-md/together.ai/preview.html +0 -897
  661. package/.opencode/oh-my-design/design-md/toss/.verification.md +0 -120
  662. package/.opencode/oh-my-design/design-md/toss/DESIGN.md +0 -698
  663. package/.opencode/oh-my-design/design-md/toss/README.md +0 -19
  664. package/.opencode/oh-my-design/design-md/toss-securities/DESIGN.md +0 -247
  665. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-proof.json +0 -126
  666. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-raw.json +0 -619
  667. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/.live-inspect-stock.json +0 -525
  668. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/fonts.json +0 -24
  669. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/structure.json +0 -35
  670. package/.opencode/oh-my-design/design-md/toss-securities/assets/_reference/tokens.json +0 -87
  671. package/.opencode/oh-my-design/design-md/tossbank/DESIGN.md +0 -576
  672. package/.opencode/oh-my-design/design-md/trenbe/.verification.md +0 -32
  673. package/.opencode/oh-my-design/design-md/trenbe/DESIGN.md +0 -293
  674. package/.opencode/oh-my-design/design-md/triple/DESIGN.md +0 -481
  675. package/.opencode/oh-my-design/design-md/tumblbug/DESIGN.md +0 -578
  676. package/.opencode/oh-my-design/design-md/tving/DESIGN.md +0 -317
  677. package/.opencode/oh-my-design/design-md/tving/assets/_reference/.live-inspect-proof.json +0 -131
  678. package/.opencode/oh-my-design/design-md/tving/assets/_reference/LICENSE-NOTE.md +0 -37
  679. package/.opencode/oh-my-design/design-md/tving/assets/_reference/attribution.md +0 -52
  680. package/.opencode/oh-my-design/design-md/tving/assets/_reference/fonts.json +0 -31
  681. package/.opencode/oh-my-design/design-md/tving/assets/_reference/screenshots/hero-desktop.png +0 -0
  682. package/.opencode/oh-my-design/design-md/tving/assets/_reference/structure.json +0 -55
  683. package/.opencode/oh-my-design/design-md/tving/assets/_reference/tokens.json +0 -115
  684. package/.opencode/oh-my-design/design-md/uber/.verification.md +0 -128
  685. package/.opencode/oh-my-design/design-md/uber/DESIGN.md +0 -423
  686. package/.opencode/oh-my-design/design-md/uber/README.md +0 -24
  687. package/.opencode/oh-my-design/design-md/uber/preview-dark.html +0 -1120
  688. package/.opencode/oh-my-design/design-md/uber/preview.html +0 -1119
  689. package/.opencode/oh-my-design/design-md/ubie/.verification.md +0 -21
  690. package/.opencode/oh-my-design/design-md/ubie/DESIGN.md +0 -615
  691. package/.opencode/oh-my-design/design-md/uniqlo/.verification.md +0 -21
  692. package/.opencode/oh-my-design/design-md/uniqlo/DESIGN.md +0 -575
  693. package/.opencode/oh-my-design/design-md/upbit/DESIGN.md +0 -337
  694. package/.opencode/oh-my-design/design-md/upbit/_research.md +0 -83
  695. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/.live-inspect-proof.json +0 -263
  696. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/fonts.json +0 -18
  697. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture-exchange.json +0 -1901
  698. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/raw-capture.json +0 -1121
  699. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/structure.json +0 -52
  700. package/.opencode/oh-my-design/design-md/upbit/assets/_reference/tokens.json +0 -169
  701. package/.opencode/oh-my-design/design-md/upstage/DESIGN.md +0 -270
  702. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/.live-inspect-proof.json +0 -157
  703. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_brand-resource-center.json +0 -44
  704. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_curated-samples.json +0 -310
  705. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_raw-capture.json +0 -1560
  706. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_root-vars.json +0 -76
  707. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/_structure-raw.json +0 -298
  708. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/fonts.json +0 -35
  709. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/structure.json +0 -72
  710. package/.opencode/oh-my-design/design-md/upstage/assets/_reference/tokens.json +0 -183
  711. package/.opencode/oh-my-design/design-md/velog/.verification.md +0 -26
  712. package/.opencode/oh-my-design/design-md/velog/DESIGN.md +0 -196
  713. package/.opencode/oh-my-design/design-md/vercel/.verification.md +0 -134
  714. package/.opencode/oh-my-design/design-md/vercel/DESIGN.md +0 -523
  715. package/.opencode/oh-my-design/design-md/vercel/README.md +0 -24
  716. package/.opencode/oh-my-design/design-md/vercel/preview-dark.html +0 -368
  717. package/.opencode/oh-my-design/design-md/vercel/preview.html +0 -367
  718. package/.opencode/oh-my-design/design-md/voicetube/.verification.md +0 -34
  719. package/.opencode/oh-my-design/design-md/voicetube/DESIGN.md +0 -266
  720. package/.opencode/oh-my-design/design-md/voltagent/.verification.md +0 -159
  721. package/.opencode/oh-my-design/design-md/voltagent/DESIGN.md +0 -454
  722. package/.opencode/oh-my-design/design-md/voltagent/README.md +0 -24
  723. package/.opencode/oh-my-design/design-md/voltagent/preview-dark.html +0 -487
  724. package/.opencode/oh-my-design/design-md/voltagent/preview.html +0 -766
  725. package/.opencode/oh-my-design/design-md/wadiz/DESIGN.md +0 -415
  726. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/.live-inspect-proof.json +0 -137
  727. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/fonts.json +0 -17
  728. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/structure.json +0 -35
  729. package/.opencode/oh-my-design/design-md/wadiz/assets/_reference/tokens.json +0 -80
  730. package/.opencode/oh-my-design/design-md/wanted/DESIGN.md +0 -575
  731. package/.opencode/oh-my-design/design-md/wanted/_promo.json +0 -31
  732. package/.opencode/oh-my-design/design-md/wanted/_research.md +0 -119
  733. package/.opencode/oh-my-design/design-md/wantedly/.verification.md +0 -53
  734. package/.opencode/oh-my-design/design-md/wantedly/DESIGN.md +0 -437
  735. package/.opencode/oh-my-design/design-md/warp/.verification.md +0 -156
  736. package/.opencode/oh-my-design/design-md/warp/DESIGN.md +0 -431
  737. package/.opencode/oh-my-design/design-md/warp/README.md +0 -23
  738. package/.opencode/oh-my-design/design-md/warp/preview-dark.html +0 -500
  739. package/.opencode/oh-my-design/design-md/warp/preview.html +0 -533
  740. package/.opencode/oh-my-design/design-md/watcha/DESIGN.md +0 -465
  741. package/.opencode/oh-my-design/design-md/wavve/DESIGN.md +0 -480
  742. package/.opencode/oh-my-design/design-md/wconcept/DESIGN.md +0 -556
  743. package/.opencode/oh-my-design/design-md/webflow/.verification.md +0 -151
  744. package/.opencode/oh-my-design/design-md/webflow/DESIGN.md +0 -330
  745. package/.opencode/oh-my-design/design-md/webflow/README.md +0 -23
  746. package/.opencode/oh-my-design/design-md/webflow/preview-dark.html +0 -147
  747. package/.opencode/oh-my-design/design-md/webflow/preview.html +0 -146
  748. package/.opencode/oh-my-design/design-md/wired/.verification.md +0 -21
  749. package/.opencode/oh-my-design/design-md/wired/DESIGN.md +0 -572
  750. package/.opencode/oh-my-design/design-md/wise/.verification.md +0 -141
  751. package/.opencode/oh-my-design/design-md/wise/DESIGN.md +0 -317
  752. package/.opencode/oh-my-design/design-md/wise/README.md +0 -23
  753. package/.opencode/oh-my-design/design-md/wise/preview-dark.html +0 -230
  754. package/.opencode/oh-my-design/design-md/wise/preview.html +0 -229
  755. package/.opencode/oh-my-design/design-md/x.ai/.verification.md +0 -140
  756. package/.opencode/oh-my-design/design-md/x.ai/DESIGN.md +0 -397
  757. package/.opencode/oh-my-design/design-md/x.ai/README.md +0 -24
  758. package/.opencode/oh-my-design/design-md/x.ai/preview-dark.html +0 -356
  759. package/.opencode/oh-my-design/design-md/x.ai/preview.html +0 -407
  760. package/.opencode/oh-my-design/design-md/xiaohongshu/DESIGN.md +0 -462
  761. package/.opencode/oh-my-design/design-md/yanolja/.verification.md +0 -83
  762. package/.opencode/oh-my-design/design-md/yanolja/DESIGN.md +0 -508
  763. package/.opencode/oh-my-design/design-md/yeogiotte/.verification.md +0 -210
  764. package/.opencode/oh-my-design/design-md/yeogiotte/DESIGN.md +0 -500
  765. package/.opencode/oh-my-design/design-md/yogiyo/DESIGN.md +0 -515
  766. package/.opencode/oh-my-design/design-md/yourator/.verification.md +0 -39
  767. package/.opencode/oh-my-design/design-md/yourator/DESIGN.md +0 -453
  768. package/.opencode/oh-my-design/design-md/zapier/.verification.md +0 -156
  769. package/.opencode/oh-my-design/design-md/zapier/DESIGN.md +0 -474
  770. package/.opencode/oh-my-design/design-md/zapier/README.md +0 -24
  771. package/.opencode/oh-my-design/design-md/zapier/preview-dark.html +0 -380
  772. package/.opencode/oh-my-design/design-md/zapier/preview.html +0 -372
  773. package/.opencode/oh-my-design/design-md/zigbang/DESIGN.md +0 -500
  774. package/.opencode/oh-my-design/design-md/zigbang/_promo.json +0 -16
  775. package/.opencode/oh-my-design/design-md/zigbang/_research.md +0 -101
  776. package/.opencode/oh-my-design/design-md/zigzag/DESIGN.md +0 -695
  777. package/.opencode/oh-my-design/design-md/zigzag/_promo.json +0 -23
  778. package/.opencode/oh-my-design/design-md/zigzag/_research.md +0 -64
  779. package/.opencode/oh-my-design/design-md/zozotown/.verification.md +0 -20
  780. package/.opencode/oh-my-design/design-md/zozotown/DESIGN.md +0 -578
  781. package/.opencode/oh-my-design/packages/mcp/dist/index.mjs +0 -21685
  782. package/.opencode/oh-my-design/packages/mcp/dist/index.mjs.map +0 -1
  783. package/.opencode/tools/extract-design-pattern.py +0 -182
  784. package/.opencode/tools/sdd_design.ts +0 -303
@@ -1,116 +0,0 @@
1
- # Research Sources for freee
2
-
3
- 추출 일자: 2026-04-17
4
- 스킬: `omd:add-reference` (5-tier methodology)
5
- 입력 URL: `https://vibes.freee.co.jp` + `https://github.com/freee/vibes`
6
-
7
- ## Tier 1 — Official Design System
8
-
9
- **Status: FULLY FOUND — open-source design system with public source code**
10
-
11
- freee's design system is named **Vibes** and is fully open source at [github.com/freee/vibes](https://github.com/freee/vibes). All design tokens are committed to the repo as SCSS partials in `stylesheets/lv0/`:
12
- - `_colors.scss` (2.6KB) — full color palette: 9 hue scales × 5-10 shades + semantic aliases
13
- - `_size.scss` (4.6KB) — spacing scale, type scale, form-control heights, z-index hierarchy, container widths, line-height, font family
14
- - `_fonts.scss` (385B) — `freee-logo` font definition (Noto Sans CJK JP Medium)
15
- - `_focus.scss` (644B) — focus ring styles
16
-
17
- Plus a public Storybook hosted at [vibes.freee.co.jp](https://vibes.freee.co.jp) showcasing every component with live previews.
18
-
19
- Distribution: `@freee_jp/vibes` npm package. CSS imported via `@freee_jp/vibes/css` (`vibes_2021.css` or `.min.css`).
20
-
21
- ## Tier 2 — Brand / Press Kit
22
-
23
- Not investigated — Tier 1 source is comprehensive and authoritative.
24
-
25
- ## Tier 3 — Engineering / Design Blog
26
-
27
- [freee Developers Hub](https://developers.freee.co.jp) hosts technical articles. Specific design system writeups not deeply mined for this initial extraction.
28
-
29
- ## Tier 4 — Live Site Recon
30
-
31
- **Method**: Playwright MCP screenshot of [vibes.freee.co.jp](https://vibes.freee.co.jp) Storybook (verifies the docs site is live and accessible).
32
-
33
- Storybook navigation confirms:
34
- - DOC section: Readme, Colors, Contribution, Design, Storybook, Stylesheets, TypeScript
35
- - EXAMPLES: Collection, Forms, ImportWizard, Pages, ResponsiveLayout, ThroughCommonProps
36
- - LV2 components: accordionPanel, breadcrumbs, bulletedList, buttonGroup, calendar, cardNavigation, combobox, descriptionList, dialogs, dropdown, dropdownButton, emptyStates, fileUploader, filterTag, filterableDropdownButton, ...
37
-
38
- Screenshot saved: `_research/vibes-storybook-1440px.png`
39
-
40
- ## Extraction details (from raw GitHub source)
41
-
42
- Raw URLs fetched via curl:
43
- - https://raw.githubusercontent.com/freee/vibes/master/stylesheets/lv0/_colors.scss
44
- - https://raw.githubusercontent.com/freee/vibes/master/stylesheets/lv0/_size.scss
45
- - https://raw.githubusercontent.com/freee/vibes/master/stylesheets/lv0/_fonts.scss
46
-
47
- All token values quoted in DESIGN.md are direct copies from these source files — zero inference.
48
-
49
- ## Confidence
50
-
51
- ### High Confidence (direct from open-source SCSS source code)
52
- - Entire 9-hue color palette (Primary, Secondary, Red, Orange, Yellow, Yellow-Green, Green, Blue-Green, Purple, Gray)
53
- - Semantic color aliases (`$vbPrimaryColor`, `$vbAccentColor`, `$vbAlertColor`, etc.)
54
- - Type scale (5 sizes: 10/12/14/16/24dp)
55
- - Spacing scale (4/8/16/24/32/48dp)
56
- - Form-control heights (24/36/48dp)
57
- - Three shadow recipes (`$vbCardShadow`, `$vbFloatingShadow`, `$vbPopupShadow`)
58
- - Z-index hierarchy (10 named layers: overlay 100 → max 2147483647)
59
- - Font stack (Hiragino-led Japanese system stack)
60
- - Line height 1.5
61
- - Container max-width 1120dp, mobile boundary 768dp
62
- - `freee-logo` brand wordmark uses Noto Sans CJK JP Medium
63
-
64
- ### Medium Confidence (inferred from token usage patterns + general SaaS conventions)
65
- - Per-component patterns (button padding, table styling) — inferred from spacing scale + semantic colors; specific component code not exhaustively read
66
- - Default `border-radius: 4px` for buttons/cards — vibes does not tokenize radius; observed in component examples
67
-
68
- ### Inferred (verify before relying on)
69
- - Brand wordmark explicitly uses `freee-logo` font; everywhere else uses the system stack — confirmed by `_fonts.scss` showing only the wordmark face is loaded
70
- - Animation timing — not in token files; assumed `0.2-0.3s ease`
71
-
72
- ## Notes
73
- - freee Vibes is the **most cleanly architected** of the OMD references — three-tier token system (scale → semantic → component) with explicit naming conventions.
74
- - The 9-hue palette + per-hue 5-10 shade scale gives this system unusual breadth (vs. e.g., Mercari which is more focused on a few brand colors).
75
- - The brand color pattern (`$vbPrimaryColor === $vbLinkColor === $vbColorsP07`) means buttons and links share the same blue — a deliberate visual coherence choice.
76
- - Open-source license + active maintenance makes this a particularly durable reference; tokens won't silently drift.
77
- - Re-running `omd:add-reference` against this reference can pull updates from the GitHub repo's latest commit.
78
-
79
- ---
80
-
81
- ## Philosophy Layer — added 2026-04-20
82
-
83
- Style reference: `line` (JP peer; best density match per Phase 10-2 auto-pick matrix for 🇯🇵 JP targets).
84
-
85
- ### Sources used (Philosophy augmentation)
86
- - [corp.freee.co.jp/mission](https://corp.freee.co.jp/mission/) — used for: §10 voice samples ("スモールビジネスを、世界の主役に。"), §11 brand narrative (mission verbatim, SMB-as-catalyst framing).
87
- - [corp.freee.co.jp/company](https://corp.freee.co.jp/company/) — used for: §11 founder biography (Daisuke Sasaki, ex-Google SMB marketing APAC, 2012 founding).
88
- - [corp.freee.co.jp/sustainability/social/accessibility](https://corp.freee.co.jp/sustainability/social/accessibility/) — used for: §10 voice sample ("だれでもビジネスの主役になれる"), §11 closing paragraph, §12 Principle 7.
89
- - [a11y-guidelines.freee.co.jp/intro/intro.html](https://a11y-guidelines.freee.co.jp/intro/intro.html) — used for: §12 Principle 7 (WCAG 2.1 AA, concrete-over-abstract editorial stance).
90
- - [developers.freee.co.jp/entry/growing-vibes](https://developers.freee.co.jp/entry/growing-vibes) — used for: §12 Principle 7 (accessibility-as-foundation, tiered responsibility model), §11 (Vibes open-source rationale).
91
- - [brand.freee.co.jp/designphilosophy](https://brand.freee.co.jp/designphilosophy/) — used for: §10 intro (four-adjective register: かろやか / シンプル / あんしん / インテリジェント), §10 forbidden-phrases register, §12 Principles 2–4. *Note: page returned minimal markdown to WebFetch; the four-adjective register is confirmed across search-surface summaries and third-party writeups (Takram rebrand case, note.com, developers.freee.co.jp reading-group post) rather than by a single full-content fetch.*
92
- - [speakerdeck.com/magi1125/dezainpurinsipurunotukurikata](https://speakerdeck.com/magi1125/dezainpurinsipurunotukurikata) — used for: §12 Principles 1 and 8 (segment-by-workflow, helper-text-only-at-costly-fields framing).
93
- - [corp.freee.co.jp/news/20231219_design.html](https://corp.freee.co.jp/news/20231219_design.html) — used for: §11 (Vibes open-source announcement framing accessibility as the headline asset).
94
-
95
- ### Gaps / concerns flagged
96
- - Three of six §10 voice samples are `<!-- illustrative -->` rather than `<!-- verified -->`. freee's customer-facing product UI is behind login, so in-app microcopy could not be scraped. All three illustrative samples are modeled on plain 丁寧語 observed on `corp.freee.co.jp` and `a11y-guidelines.freee.co.jp`. Reviewer with freee product access should cross-check before they are used as microcopy source.
97
- - §15 motion stance ("no spring, no overshoot") is an editorial derivation from product category + the four-adjective register. freee does not publish a motion spec; a reviewer with Vibes component source can verify or refute.
98
- - `brand.freee.co.jp/designphilosophy` page is heavily image/JS-driven; WebFetch returned only the page title. Content used was confirmed via search-surface cross-checks but not by a single full-markdown fetch.
99
-
100
- ## Philosophy Layer QA (2026-04-20) — Diagnostic Rubric
101
-
102
- | # | Dimension | Score | Notes |
103
- |---|---|---|---|
104
- | D1 | §10 intro standalone, 3–5 lines, voice qualifiers | 🟢 | Standalone opener (no comparative reference to LINE / Mercari / Apple). 5 lines of prose. Four brand-published voice qualifiers (かろやか / シンプル / あんしん / インテリジェント) plus "plain, reassuring, unobtrusively competent" synthesis adjectives. |
105
- | D2 | §10 tone table 7–10 rows with brand-surface | 🟢 | 8 rows. Includes CTAs / Errors (2 variants) / Success / Onboarding (mandatory) + brand-specific rows: Help/inline explanation (tax-term gloss) and Accessibility surfaces (screen-reader + visible copy parity). |
106
- | D3 | §10 forbidden phrases with brand-specific items | 🟢 | Generic bans (革命的 / revolutionary / game-changer) + JP-specific カタカナ jargon bans (イノベーティブ / ディスラプティブ) + category-specific bans (emoji on money-moved, absolutes like 完全自動 / 100% 正確 that a tax authority could contradict). |
107
- | D4 | §10 voice samples ≥3 with verification tier markers | 🟢 | 6 samples total. 2 verified (mission tagline + accessibility tagline, both with URL + yyyy-mm markers). 1 cited (four-adjective register). 3 illustrative (empty state, validation error, success toast) with explicit illustrative markers. All 6 marked. |
108
- | D5 | §11 narrative with inline citations + footer manifest | 🟢 | Inline markdown links to corp.freee.co.jp/company, /mission, /sustainability/social/accessibility, a11y-guidelines.freee.co.jp, github.com/freee/vibes. Full source manifest in HTML comment footer with tiering (Direct / Cited / JP-translated / Base-carry / Interpretive). |
109
- | D6 | §12 principles with explicit UI implication | 🟢 | All 8 principles use explicit `*UI implication:*` label followed by concrete rule and example. |
110
- | D7 | §12 count 5–10 (target 7–9) | 🟢 | 8 principles. |
111
- | D8 | §13 personas ≤3 sentences, behavior-first, disclaimer | 🟢 | 4 archetypes, each ≤3 sentences. Disclaimer present. Japanese SMB context respected (ramen shop owner, sole-proprietor illustrator, 税理士, design-studio back-office lead). Behaviors dominate over background. |
112
- | D9 | §14 states 10–12, core types covered, no UI-pattern pollution | 🟢 | 12 rows. Core types covered: Empty (2), Loading (2), Error (3), Success (2), Skeleton, Disabled. Brand-authentic row: Approval pending (HR/expense workflow) — unique to SMB back-office context. No UI-pattern pollution. |
113
- | D10 | §15 spring stance explicit + rationale | 🟢 | Explicit: "No spring. No overshoot. No bounce." Rationale: accounting/tax product + four-adjective register; spring tells a user "watch this", which is wrong next to a ledger balance. |
114
- | D11 | §15 reduce-motion rule present | 🟢 | Present. All `motion-*` tokens collapse to `motion-instant` under `prefers-reduced-motion: reduce`. No exceptions; cross-referenced to Principle 7 (accessibility as product constraint). |
115
-
116
- **Result**: 11 🟢 / 0 🟡 / 0 🔴. **PASS.**
@@ -1,40 +0,0 @@
1
- # Fugle — Verification Notes (2026-06-03)
2
-
3
- ## Proof — Tier 1 live inspect
4
- **Inspected:** 2026-06-03
5
- **Method:** raw source-file fetch (homepage HTML + CSS bundles + PWA manifest + developer portal CSS + Apple App Store listing)
6
- **Sources:**
7
- - https://www.fugle.tw (full HTML, inline `<style>`, meta tags)
8
- - https://dk91kmsnfr6kg.cloudfront.net/desktop/assets/fugle-desktop.d5b14f507dc94191ea072af78696b931.css (156,854 bytes)
9
- - https://dk91kmsnfr6kg.cloudfront.net/desktop/assets/chunk.ac7daef9fdaa5882212c.css (54,782 bytes)
10
- - https://dk91kmsnfr6kg.cloudfront.net/desktop/assets/chunk.ac7daef9fdaa5882212c.js (1,649,565 bytes)
11
- - https://www.fugle.tw/manifest.json
12
- - https://developer.fugle.tw/assets/css/styles.46d8cd92.css (129,961 bytes)
13
- - https://apps.apple.com/tw/app/fugle/id1542310263
14
-
15
- ### Raw samples
16
- 1. `www.fugle.tw` HTML inline style: `.lds-ellipsis div { background:#f4af1c; animation-timing-function:cubic-bezier(0,1,1,0) }` — primary amber, loading dot easing
17
- 2. `www.fugle.tw` HTML meta: `<meta name="theme-color" content="#f4af1c">` — confirmed brand primary
18
- 3. `www.fugle.tw/manifest.json`: `"theme_color": "#fbcc67"` — PWA manifest uses a lighter amber (conflict noted; CSS canonical value `#f4af1c` used as primary)
19
- 4. `fugle-desktop.css` CSS custom properties: `--color-neutral-00-white:#ffffff; --color-neutral-04:#f5f5f5; --color-neutral-08:#eaeaea; --color-neutral-46:#8b8a8a; --color-neutral-80:#323232; --color-neutral-93:#131313` — full neutral scale
20
- 5. `fugle-desktop.css` component: `.fugle-trade-box { border-radius:4px; box-shadow:0 2px 2px 0 rgba(0,0,0,.08),0 2px 7px 0 rgba(0,0,0,.1) }` — card radius and shadow
21
- 6. `fugle-desktop.css` component: `.watchlist-stock { min-height:55px; border-bottom:1px solid var(--t20) }` — stock row height 55px, border rule
22
- 7. `fugle-desktop.css` component: `input { height:32px; border-radius:4px; background-color:var(--t20); font-size:16px }` — input field tokens
23
- 8. `chunk.ac7daef9fdaa5882212c.js` JS object: `red:"#f3746d",green:"#6c9c46",grey:"#545454"` — light theme trading colors
24
- 9. `chunk.ac7daef9fdaa5882212c.js` JS object: `dark:{red:"#ff3737",green:"#6fda1a"}` — dark theme trading colors
25
- 10. `developer.fugle.tw` CSS custom properties: `--p:#f4af1c; --p20:#fef4cf; --p60:#e49b00; --s:#4c85a0; --s60:#36708c` — full developer palette, confirms primary and secondary hues
26
- 11. `developer.fugle.tw` CSS: `--ifm-color-primary:#f4af1c; --ifm-color-primary-dark:#e49b00` — Docusaurus override confirms brand primary
27
- 12. `developer.fugle.tw` CSS: `font-family:"Noto Sans TC","Microsoft JhengHei"` — Traditional Chinese typeface
28
- 13. `fugle-desktop.css` transition: `transition:all .2s cubic-bezier(.4,.6,.2,1)` — standard easing curve
29
- 14. `apps.apple.com/tw/app/fugle/id1542310263` App Store description (zh-TW): `"認真的投資人值得更好的工具"` — core brand tagline
30
-
31
- ## Tier 2 — cross-check
32
- - getdesign.md/fugle — **NOT LISTED**: "No designs found for 'fugle'."
33
- - refero — no TW/Fugle results; not applicable for Taiwan-based fintech.
34
-
35
- ## Country + regional sources
36
- - Country: TW (Taiwan); parent company Fortuna Intelligence (富果股份有限公司), headquartered in Taipei, Taiwan
37
- - Brand-owned regional sources (≥2):
38
- 1. https://www.fugle.tw — main product domain, served from Taiwan, language `zh-Hant-TW`
39
- 2. https://developer.fugle.tw — official developer API portal, fugle.tw subdomain, Traditional Chinese product description
40
- 3. https://apps.apple.com/tw/app/fugle/id1542310263 — App Store Taiwan listing under developer "Fortuna Intelligence", app id `tw.fugle.flutter.app`
@@ -1,290 +0,0 @@
1
- ---
2
- id: fugle
3
- name: "Fugle"
4
- country: TW
5
- category: fintech
6
- homepage: "https://www.fugle.tw"
7
- primary_color: "#f4af1c"
8
- logo:
9
- type: favicon
10
- slug: "https://www.fugle.tw/images/favicon.ico"
11
- verified: "2026-06-03"
12
- omd: "0.1"
13
- tokens:
14
- source: prose-derived
15
- extracted: "2026-06-09"
16
- colors:
17
- primary: "#f4af1c"
18
- primary-hover: "#e49b00"
19
- primary-tint: "#fef4cf"
20
- secondary: "#4c85a0"
21
- secondary-hover: "#36708c"
22
- canvas: "#ffffff"
23
- bg-secondary: "#f5f5f5"
24
- border: "#eaeaea"
25
- border-heavy: "#dfdfdf"
26
- text: "#323232"
27
- text-muted: "#8b8a8a"
28
- dark-surface: "#131313"
29
- rise: "#f3746d"
30
- fall: "#6c9c46"
31
- error: "#d12a2a"
32
- typography:
33
- family: { sans: "Lato", mono: "Lato" }
34
- highlight: { size: 24, weight: 700, lineHeight: 1.4, use: "Data highlight values" }
35
- heading: { size: 20, weight: 700, lineHeight: 1.4, use: "Dialog / section headings" }
36
- modal: { size: 16, weight: 400, lineHeight: 1.5, use: "Modal body, form inputs" }
37
- body: { size: 14, weight: 400, lineHeight: 1.4, use: "Dense data rows" }
38
- label: { size: 12, weight: 400, lineHeight: 1.4, use: "Secondary labels, timestamps" }
39
- spacing: { xs: 5, sm: 8, base: 16, lg: 20, xl: 32, section: 50 }
40
- rounded: { sm: 4, md: 4, lg: 8, full: 9999 }
41
- shadow:
42
- card: "0 2px 2px 0 rgba(0,0,0,.08), 0 2px 7px 0 rgba(0,0,0,.1)"
43
- popover: "0 0 24px 0 rgba(0,0,0,.08)"
44
- modal: "0 0 17px 0 rgba(0,0,0,.14), 0 8px 9px 0 rgba(0,0,0,.12)"
45
- components:
46
- button-primary: { type: button, bg: "#f4af1c", fg: "#ffffff", radius: "4px", font: "14px / 700", use: "Amber CTA; hover #e49b00" }
47
- input-default: { type: input, bg: "#eaeaea", radius: "4px", padding: "0 5px", font: "16px / 400", use: "Search / trade input, 32px height" }
48
- list-item-stock: { type: listItem, bg: "#ffffff", radius: "0px", font: "14px / 400", use: "Watchlist row, 55px height, 1px #eaeaea border; hover rgba(0,0,0,0.04)" }
49
- card-trade: { type: card, bg: "#ffffff", radius: "4px", padding: "20px 0", use: "Surface trade box card" }
50
- card-info: { type: card, bg: "#eaeaea", radius: "8px", use: "Highlighted info box" }
51
- dialog: { type: dialog, bg: "#ffffff", radius: "4px", padding: "16px", font: "16px / 400", use: "Modal dialog container" }
52
- components_harvested: true
53
- ---
54
-
55
- # Fugle
56
-
57
- Taiwan's visual-first stock research and trading platform, built by investors for serious investors.
58
-
59
- ## 1. Visual Theme & Atmosphere
60
-
61
- Fugle's interface speaks the language of precision and calm confidence. A predominantly light, near-white canvas — `#f5f5f5` for secondary surfaces, `#ffffff` for foreground containers — keeps the dense data of Taiwan equity markets easy to scan without overwhelming the eye. Against this quiet ground, the brand's signature amber `#f4af1c` appears sparingly but unmistakably: loading indicators, live-chat buttons, version badges, and chart reference lines all carry the same warm gold tone. The dark theme inverts the arrangement, dropping to a near-black `#131313` base with `#323232` surface layers, letting red and green trading signals pop with strong luminance contrast. Two modes share the same structural rhythm — compact rows, 4 px and 8 px radii, tight 12–14 px body type — giving both themes an identical sense of discipline and information density appropriate to active trading.
62
-
63
- ## 2. Color Palette & Roles
64
-
65
- - **Brand Amber:** `#f4af1c` — primary brand color; loading spinners, live-chat button, version badges, chart line accent, primary CTA background
66
- - **Amber Dark:** `#e49b00` — hover state for primary buttons (`--p60`), icon fills on emphasis
67
- - **Amber Tint:** `#fef4cf` — soft background for amber-highlighted content areas (`--p20`)
68
- - **Secondary Blue:** `#4c85a0` — secondary interactive elements, link text default (`--s`, `--color-neutral-link-50`)
69
- - **Secondary Blue Dark:** `#36708c` — secondary blue hover (`--s60`)
70
- - **Surface White:** `#ffffff` — card backgrounds, modal surfaces, `--color-neutral-00-white`
71
- - **Background Secondary:** `#f5f5f5` — page backgrounds, hover fills (`--color-neutral-04`)
72
- - **Border Default:** `#eaeaea` — dividers, default strokes (`--color-neutral-08`)
73
- - **Border Heavy:** `#dfdfdf` — emphasized borders (`--color-neutral-13`)
74
- - **Secondary Text:** `#8b8a8a` — muted labels, helper text (`--color-neutral-46`)
75
- - **Body Text:** `#323232` — primary foreground text (`--color-neutral-80`)
76
- - **Dark Surface:** `#131313` — dark-mode primary background (`--color-neutral-93`)
77
- - **Rise (Light):** `#f3746d` — stock price rise in light theme (TW convention: red = up)
78
- - **Fall (Light):** `#6c9c46` — stock price fall in light theme (TW convention: green = down)
79
- - **Error:** `#d12a2a` — system errors, form validation (`--color-red-600`)
80
-
81
- ## 3. Typography Rules
82
-
83
- Fugle uses **Lato** (via Google Fonts) as the Latin character family across the main web trading platform, complemented by **Noto Sans TC** and **Microsoft JhengHei** on the developer documentation portal for Traditional Chinese text. The Material Icons font handles iconography throughout.
84
-
85
- Body text runs at **14 px / normal** weight for dense data rows, **12 px** for secondary labels and timestamps, and **16 px** for modal body copy and form inputs. Section headings use **20 px / 700** in dialogs, and data highlight values reach **18–24 px**. Line heights are kept tight to maximize data density — approximately 1.4–1.5× for multi-line text. Font weight vocabulary: 400 for body, 700 for emphasis and headings. No custom variable fonts detected.
86
-
87
- ## 4. Component Stylings
88
-
89
- ### Primary Button
90
-
91
- **Amber CTA (e.g. "開始交易")**
92
- - Background: `#f4af1c`
93
- - Text: `#ffffff`
94
- - Border: none
95
- - Radius: 4px
96
- - Font: 14px / 700
97
-
98
- **Amber CTA Hover**
99
- - Background: `#e49b00`
100
- - Text: `#ffffff`
101
- - Radius: 4px
102
-
103
- ### Input Field
104
-
105
- **Default Search / Trade Input**
106
- - Background: `#eaeaea`
107
- - Border: none
108
- - Radius: 4px
109
- - Height: 32px
110
- - Padding: 0 5px 0 5px
111
- - Font: 16px / 400
112
-
113
- **Input Group (with label)**
114
- - Border: 1px solid `#eaeaea`
115
- - Radius: 4px
116
- - Height: 32px
117
-
118
- ### Stock Row (Watchlist)
119
-
120
- **Default Stock List Item**
121
- - Background: `#ffffff`
122
- - Border: 1px solid `#eaeaea`
123
- - Radius: 0px
124
- - Height: 55px
125
- - Font: 14px / 400
126
-
127
- **Hovered Stock Row**
128
- - Background: `rgba(0,0,0,0.04)`
129
-
130
- ### Card / Trade Box
131
-
132
- **Surface Card (e.g. fugle-trade-box)**
133
- - Background: `#ffffff`
134
- - Border: none
135
- - Radius: 4px
136
- - Padding: 20px 0
137
-
138
- **Info Card (e.g. watchlist-stock__box)**
139
- - Background: `#eaeaea`
140
- - Radius: 8px
141
-
142
- ### Modal
143
-
144
- **Dialog Container**
145
- - Background: `#ffffff`
146
- - Radius: 4px
147
- - Font: 16px / 400
148
- - Padding: 16px
149
-
150
- ---
151
- **Verified:** 2026-06-03
152
- **Tier 1 sources:** https://www.fugle.tw (HTML, inline CSS, manifest.json), https://dk91kmsnfr6kg.cloudfront.net/desktop/assets/fugle-desktop.d5b14f507dc94191ea072af78696b931.css, https://dk91kmsnfr6kg.cloudfront.net/desktop/assets/chunk.ac7daef9fdaa5882212c.css, https://developer.fugle.tw/assets/css/styles.46d8cd92.css, https://apps.apple.com/tw/app/fugle/id1542310263
153
- **Tier 2 sources:** getdesign.md/fugle — No designs found for "fugle". refero — no TW/Fugle results expected.
154
- **Conflicts unresolved:** HTML `theme-color` is `#f4af1c`; PWA manifest `theme_color` is `#fbcc67` (a lighter amber). The CSS custom property `--p` and developer portal's `--ifm-color-primary` both canonically define `#f4af1c`; the manifest value is likely a PWA splash-screen approximation. Primary recorded as `#f4af1c`.
155
-
156
- ## 5. Layout Principles
157
-
158
- Fugle's web trading platform is a dense multi-panel grid. The header is fixed at **50 px** height. A left sidebar watchlist panel (configurable width via `--watchListWidth`) sits beside a scrollable main canvas. The trading panel (`--tradingWidth`) expands from the right edge. The main content container caps at **1508 px** max-width for standard market views, but trading views use `max-width: initial` for full-bleed chart display. Column grids follow Bootstrap-compatible breakpoints: 576 px (sm), 768 px (md), 1280 px (lg), 1440 px / 1680 px (xl variants for watchlist density). Card grids use CSS grid with responsive `repeat(N, 1fr)` columns that scale from 2 up to 5 columns depending on viewport.
159
-
160
- ## 6. Depth & Elevation
161
-
162
- Fugle uses a layered shadow system that signals interactive hierarchy without dramatic depth:
163
-
164
- - **Resting card:** `box-shadow: 0 2px 2px 0 rgba(0,0,0,.08), 0 2px 7px 0 rgba(0,0,0,.1)`
165
- - **Dropdown / popover:** `box-shadow: 0 0 24px 0 rgba(0,0,0,.08)`
166
- - **Modal / elevated panel:** `box-shadow: 0 0 17px 0 rgba(0,0,0,.14), 0 8px 9px 0 rgba(0,0,0,.12)`
167
- - **Focus / active ring:** `box-shadow: 0 8px 10px 1px rgba(0,0,0,.14), 0 3px 14px 3px rgba(0,0,0,.12), 0 4px 15px 0 rgba(0,0,0,.2)`
168
- - **Side panel frame:** `box-shadow: 0 4px 8px -4px var(--color-component-web-frame-shadow-default), 0 8px 16px -4px var(--color-component-web-frame-shadow-default)` — `rgba(0,0,0,0.08)` in light, `rgba(255,255,255,0.08)` in dark
169
-
170
- Dark mode shadows use white-alpha variants to create the inverse glow effect. No `z-index`-heavy stacking unless modals are active.
171
-
172
- ## 7. Do's and Don'ts
173
-
174
- ### Do
175
- - Use `#f4af1c` amber as the single primary CTA color across light and dark modes
176
- - Show red (`#f3746d`) for rising prices and green (`#6c9c46`) for falling prices — follow Taiwan Stock Exchange convention, opposite of Western norms
177
- - Keep card surfaces white (`#ffffff`) in light mode and dark (`#131313`) in dark mode; always separate with subtle border `#eaeaea` rather than heavy shadows
178
- - Use Lato for Latin numerals in data-dense contexts; pair with Noto Sans TC for Chinese labels
179
- - Apply `border-radius: 4px` uniformly to buttons, inputs, and cards; reserve `8px` for highlighted info boxes
180
- - Limit the primary amber to interactive hotspots — loading states, primary buttons, notification badges — so it retains signal value
181
-
182
- ### Don't
183
- - Don't use amber as a neutral fill or background wash — it should always signal action or system state
184
- - Don't swap the red/green convention to Western defaults; Fugle's users rely on red = up, green = down
185
- - Don't use heavy drop shadows on resting states; the light `rgba(0,0,0,.08)` layered shadow is intentional
186
- - Don't exceed 16 px body font in data rows — density is a core UX value
187
- - Don't add decorative illustration or gradient washes to the trading canvas; the chart data is the visual
188
- - Don't use the dark theme in onboarding or marketing contexts; it's designed for active-trading sessions
189
-
190
- ## 8. Responsive Behavior
191
-
192
- The platform targets desktop-first (min 1024 px canvas) and degrades gracefully to tablet. Breakpoints mirror Bootstrap: 576 px, 768 px, 1280 px, 1440 px, 1680 px. The watchlist sidebar collapses on narrow viewports. The trading panel (`--tradingWidth`) is hidden by default and slides in over the canvas on demand. Card grids scale: 1 column below 576 px, 2 columns at md, 3–5 at xl depending on feature area. Mobile is covered by the native iOS/Android app (Fugle app id 1542310263), which shares the brand's color and typography tokens but uses a card-based vertical scroll layout optimized for thumb navigation.
193
-
194
- ## 9. Agent Prompt Guide
195
-
196
- When building Fugle-style interfaces:
197
-
198
- - Start with a white (`#ffffff`) or light-grey (`#f5f5f5`) canvas, dense 12–14 px body text in Lato, no decorative imagery
199
- - Primary CTAs: `background #f4af1c`, white text, 4 px radius, no visible border, hover to `#e49b00`
200
- - Data rows: `min-height 55px`, `border-bottom 1px solid #eaeaea`, hover `rgba(0,0,0,0.04)` background
201
- - Price changes: **always** red for rise, green for fall (TW convention); use `#f3746d` / `#6c9c46` in light mode
202
- - Cards: `border-radius 4px`, `box-shadow 0 2px 2px 0 rgba(0,0,0,.08), 0 2px 7px 0 rgba(0,0,0,.1)`, no border
203
- - Form inputs: `height 32px`, `border-radius 4px`, background `#eaeaea`, `font-size 16px`
204
- - Transitions: `0.2s cubic-bezier(.4,.6,.2,1)` for most UI state changes
205
- - Dark mode: swap backgrounds to `#131313` / `#222222` surfaces; keep `#f4af1c` amber unchanged
206
-
207
- ## 10. Voice & Tone
208
-
209
- Fugle's voice is **precise, empowering, and peer-to-peer** — a fellow investor who happens to have built better tools, speaking directly to another serious investor.
210
-
211
- | Dimension | Do | Don't |
212
- |---|---|---|
213
- | Register | Conversational but expert; uses financial terminology naturally | Dumbed-down language or over-explaining basics |
214
- | Stance | Equal peer — "we research too" | Corporate authority — "our platform provides" |
215
- | Framing | Research space, decision clarity, serious purpose | FOMO urgency, get-rich language, hype |
216
- | Sentence length | Short to medium; punchy declaratives | Long compound clauses |
217
-
218
- Voice samples (illustrative, modelled on App Store copy tone):
219
-
220
- - "告別密密麻麻數字的傳統看盤軟體。" — *Illustrative: crisp one-liner that rejects the status quo without drama.*
221
- - "認真的投資人,值得更好的工具。" — *Illustrative: the core brand promise stated as self-evident truth, not a sales claim.*
222
- - "把時間花在決策,而非整理資料。" — *Illustrative: frames value through the user's time, not the product's features.*
223
-
224
- ## 11. Brand Narrative
225
-
226
- Fugle (富果, "rich harvest") was founded in Taiwan by Fortuna Intelligence, a team that describes itself as being simultaneously developers and practicing investors who watch the markets daily. The animating frustration was the poor quality of existing retail trading interfaces — dense, noisy, built around brokerage workflow rather than investor research workflow — and the refusal to accept that as the only option.
227
-
228
- The platform launched as a web trading app paired with a market data API, positioning itself at the intersection of fintech and developer tooling. The developer portal (developer.fugle.tw) made real-time Taiwan stock data accessible via clean REST and WebSocket APIs, partnering with Fubon, Taishin, and E.Sun securities to offer actual order execution. This dual strategy — beautiful research UI for investors, clean API for developers — reflects a philosophy that serious financial tools should meet users where they are, whether at a trading terminal or a code editor.
229
-
230
- Today Fugle frames its mission around a simple belief: "認真的投資人值得更好的工具" — serious investors deserve better tools. The product is designed not to compete with professional Bloomberg terminals or to simplify investing into a game, but to occupy a deliberate middle ground: rigorous, visual, and genuinely pleasant to use for hours of research.
231
-
232
- ## 12. Principles
233
-
234
- 1. **Data clarity over data density.** Every number on screen should earn its place. When a display becomes crowded, the answer is smarter information architecture — heatmaps, visual cards — not smaller type. *UI implication:* use whitespace and visual hierarchy in card layouts rather than cramming more data into fewer pixels.
235
-
236
- 2. **Investor perspective, not brokerage perspective.** The interface is organized around how an investor thinks (by thesis, sector, comparison) not how a brokerage processes orders. *UI implication:* watchlists, custom research cards, and side-by-side comparisons are first-class features; order ticket is secondary until the user is ready to transact.
237
-
238
- 3. **Amber signals action.** The brand's single accent color is reserved for interactive moments — loading, primary buttons, live notifications. Overuse dilutes the signal. *UI implication:* no decorative amber, no amber text, no amber borders; only amber fills on actionable elements.
239
-
240
- 4. **Both modes are production-quality.** Light mode for daytime research, dark mode for active trading sessions — neither is an afterthought. *UI implication:* every component must be spec'd for both themes with equal care; dark mode uses near-black surfaces, not grey.
241
-
242
- 5. **Serious tools should still feel fast.** Transitions are tight (0.2 s) and purposeful. Animation is reserved for loading states and layout expansions, not decoration. *UI implication:* use `cubic-bezier(.4,.6,.2,1)` easing on state changes; avoid entrance animations on data rows.
243
-
244
- ## 13. Personas
245
-
246
- *Illustrative — not based on published Fugle user research.*
247
-
248
- **Illustrative: The Research-First Investor (個人投資者)**
249
- Mid-career professional, 35–50, investing personal savings in Taiwan equities. Spends evenings building sector maps and comparing fundamentals across 5–15 stocks. Values clarity and speed; deeply annoyed by noise. Uses Fugle's custom card layout to structure a personal research SOP.
250
-
251
- **Illustrative: The Developer-Investor (開發者投資人)**
252
- Software engineer in their late 20s–early 40s who approaches investing algorithmically. Builds personal screeners using Fugle's marketdata API. Values API quality, documentation clarity, and free-tier access for prototyping. Attracted by the developer-friendly portal and Noto Sans TC-styled docs.
253
-
254
- **Illustrative: The Active Trader (短線交易者)**
255
- Experienced retail trader who watches intraday tick data and uses the dark theme during market hours. Needs every pixel to serve a function. Relies heavily on the watchlist panel and real-time price update animations. Irritated by anything that obscures the bid/ask spread display.
256
-
257
- **Illustrative: The Student Investor (學習型投資人)**
258
- University student or new entrant to Taiwan equity investing, 20–28. Discovered Fugle through a campus or online investing community. Drawn to the clean visual design compared to legacy broker platforms. Starts with the mobile app and explores web tools as confidence grows.
259
-
260
- ## 14. States
261
-
262
- - **Empty — Watchlist:** Watchlist panel shows a placeholder prompt to add a stock ticker; no skeleton rows; single amber CTA button "新增自選股"
263
- - **Loading — Data fetch:** Three amber `#f4af1c` bouncing dots (border-radius 50%, 11 px, `lds-ellipsis` animation at 0.6 s cubic-bezier(0,1,1,0)); used both on initial page load and in-panel data refresh
264
- - **Error — No data / API timeout:** Inline message inside the affected card or panel; muted text `#8b8a8a`; no modal interruption; retry link styled as secondary text link
265
- - **Error — Form validation:** Input border switches to `#d12a2a` (`--color-red-600`); error message appears below field at 12 px muted red
266
- - **Success — Order submitted:** In-panel confirmation message with a green `#6c9c46` checkmark icon; auto-dismisses after 3 s without blocking interaction
267
- - **Skeleton — Chart/card loading:** Placeholder shimmer animation (`placeHolderShimmer` keyframe, 500 ms interval defined in `loadingDelay`); uses `#eaeaea` animated gradient across content areas
268
- - **Disabled — Button:** `background-color rgba(0,0,0,.12)`, `color rgba(0,0,0,.26)`, `box-shadow none`, `cursor not-allowed`; no amber used on disabled state
269
-
270
- ## 15. Motion & Easing
271
-
272
- **Duration scale:**
273
- - Micro (icon state): 0.1 s
274
- - Fast (hover, focus): 0.2 s
275
- - Standard (panel expand, input transitions): 0.3 s
276
- - Moderate (fade, scroll animation): 0.425 s
277
- - Slow (panel slide, complex layout): 0.6–0.65 s
278
- - Extra-slow (chart loading dot): 0.6 s loop, 9 s total for secondary spinners
279
-
280
- **Primary easing:** `cubic-bezier(.4,.6,.2,1)` — Fugle's signature curve, used on layout transitions, header animations, and most interactive state changes. It has a sharp initial acceleration (the `.6` control point) and a gentle deceleration that gives the UI a confident, purposeful feel.
281
-
282
- **Secondary easing:** `cubic-bezier(0,1,.5,1)` — used for panel reveal/collapse; starts slow and exits fast, creating a "snap open" character.
283
-
284
- **Loading animation:** `cubic-bezier(0,1,1,0)` — the bouncing dot easing; exaggerated overshoot gives the brand's only playful motion moment.
285
-
286
- **Rules:**
287
- - All data-row hover transitions use `0.2s` or less; never animate data values themselves
288
- - Layout changes (watchlist open/close, trading panel) use the `--layoutDuration` CSS variable with the primary cubic-bezier curve
289
- - No entrance animations on stock rows or chart data; they appear instantly
290
- - Opacity fades use 0.425 s for modals and overlays
@@ -1,62 +0,0 @@
1
- # FunNow — Verification Notes (2026-06-10)
2
-
3
- ## Proof — Tier 1 live inspect
4
-
5
- **Inspected:** 2026-06-10
6
- **Method:** playwright getComputedStyle (live DOM) — global playwright (chromium, headless), goto domcontentloaded + 3.5–4.5s settle, modal/cookie dismissal pass, then `getComputedStyle` on body, h1/h2/h3, buttons, inputs, tabs, badges/chips, plus full-DOM background/text color frequency scans on three surfaces.
7
- **Sources:**
8
- - https://www.myfunnow.com/en (homepage — toolbar, hero, booking bar, product cards, tags)
9
- - https://www.myfunnow.com/en/regions/1/categories/10265 (Taipei Hot Spring category — page title, filter tabs, listing chrome)
10
- - https://www.events.myfunnow.com/booking-en (FunNow Booking merchant surface — CTAs, headings)
11
-
12
- ### Raw samples
13
- - `myfunnow.com/en` · body · `font-family: "Helvetica Neue", Helvetica, Tahoma, Arial, "PingFang TC", "Microsoft JhengHei", ...` · `color: rgb(37, 39, 41)` (#252729) · `font-size: 15px` · `line-height: 22.5px` · `background-color: rgb(244, 244, 245)` (#f4f4f5)
14
- - `myfunnow.com/en` · hero H1 "Explore & book your fun activities in Ta…" · `font-size: 36px` · `font-weight: 500` · `color: rgba(0, 0, 0, 0.87)` · height 88px (2 lines ≈ 44px lh)
15
- - `myfunnow.com/en` · hero H2 "Book motel & hotel, massage & spa, resta…" · `font-size: 17px` · `font-weight: 400` · `color: rgb(37, 39, 41)`
16
- - `myfunnow.com/en` · search submit button · `background-color: rgb(255, 85, 55)` (#ff5537) · `color: rgb(255, 255, 255)` · `border-radius: 4px` · `padding: 0px 16px` · height 40px · `font-size: 14px` · Material elevation shadow `rgba(0, 0, 0, 0.2) 0px 0px 0px 0px, rgba(0, 0, 0, 0.14) 0px …`
17
- - `myfunnow.com/en` · "Download App" button · `color: rgb(77, 203, 203)` (#4dcbcb) · `border: 1px solid rgb(77, 203, 203)` · `border-radius: 4px` · `padding: 0px 8px` · height 36px · `font-size: 15px`
18
- - `myfunnow.com/en` · "Login / Sign Up" button · transparent bg · `color: rgb(0, 0, 0)` · `border-radius: 4px` · `padding: 0px 8px` · height 36px · `font-size: 15px`
19
- - `myfunnow.com/en` · booking bar buttons (Category/Now/Date/Time/Pax) · transparent bg · `color: rgba(0, 0, 0, 0.87)` · `border-radius: 4px` · `padding: 0px 12px` · height 40px · `font-size: 17px`
20
- - `myfunnow.com/en` · search input · `font-size: 16px` · `padding: 8px 16px` · height 40px · `border-radius: 0px`
21
- - `myfunnow.com/en` · badge "Available now" · `background-color: rgb(255, 85, 55)` (#ff5537) · `color: rgb(255, 255, 255)` · `border-radius: 4px` · `padding: 2px 8px` · `font-size: 12px` · `font-weight: 500`
22
- - `myfunnow.com/en` · badge "Flash Sales Now" / "06:00 Flash Sale" · `background-color: rgb(90, 105, 235)` (#5a69eb) · `color: rgb(255, 255, 255)` · `border-radius: 4px` · `padding: 0px 8px` · `font-size: 12px` · `font-weight: 400`
23
- - `myfunnow.com/en` · product tiles · class `v-card v-card--flat` · `background-color: rgb(255, 255, 255)` · `border-radius: 4px` · `box-shadow: none` · measured 360×135 (list) and 233×146 (carousel)
24
- - `myfunnow.com/en` · bg frequency scan (top): `rgba(0,0,0,0.87)` ×387, `rgb(255,255,255)` ×175, `rgb(255,85,55)` ×43 (#ff5537), `rgba(0,0,0,0.4)` ×19, `rgb(255,177,7)` ×17 (#ffb107), `rgb(90,105,235)` ×13 (#5a69eb), `rgb(37,39,41)` ×9, `rgb(167,167,169)` ×6 (#a7a7a9), `rgb(77,203,203)` ×1 (#4dcbcb), `rgb(255,216,209)` ×1 (#ffd8d1), `rgb(255,238,235)` ×1 (#ffeeeb)
25
- - `myfunnow.com/en` · fg frequency scan (top): `rgba(0,0,0,0.87)` ×1770, `rgb(37,39,41)` ×502 (#252729), `rgb(255,255,255)` ×466, `rgb(255,85,55)` ×221 (#ff5537), `rgb(0,0,0)` ×125, `rgb(167,167,169)` ×60 (#a7a7a9), `rgb(77,203,203)` ×18 (#4dcbcb)
26
- - `regions/1/categories/10265` · page H1 "Taipei|TaoyuanHot Spring" · `font-size: 24px` · `font-weight: 700` · height 36px
27
- - `regions/1/categories/10265` · page H2 intro · `font-size: 18px` · `font-weight: 400`
28
- - `regions/1/categories/10265` · filter tab "All" (active) · `color: rgb(255, 85, 55)` (#ff5537) · `font-size: 17px` · `padding: 0px 16px` · height 48px; inactive tabs ("Beitou Hot Spring Hotel" …) `color: rgb(37, 39, 41)` (#252729) · height 48px
29
- - `events.myfunnow.com/booking-en` · CTA "Reach Out to Us" / "Get Started" / "Grow with Us" · `background-color: rgb(255, 85, 55)` (#ff5537) · `border-radius: 5px` · height 35–40px
30
- - `events.myfunnow.com/booking-en` · H1 "FunNow Booking — Help you stay on top" · `font-size: 46px` · `color: rgb(37, 39, 41)`; H2 sections `font-size: 34–38px` · `font-weight: 400`
31
-
32
- ## Country sources (TW — brand-owned ≥2 requirement)
33
-
34
- 1. **https://www.myfunnow.com** — FunNow official consumer platform (Tier 1 live-inspected on two surfaces: homepage + category listing).
35
- 2. **https://blog.myfunnow.com** — FunNow official lifestyle blog 「FunNow|生活玩樂誌」 (brand-owned; deal guides and brand voice).
36
- 3. **https://www.events.myfunnow.com/whyfunnow-zh** — official "Why FunNow" brand page (brand-owned; mission, slogans: "Last minute unlimited", "線上一鍵預訂,線下即刻出發!", "尖峰有優惠,離峰更划算!").
37
- 4. **https://www.events.myfunnow.com/booking-en** — FunNow Booking merchant SaaS surface (brand-owned; live-inspected).
38
-
39
- Note: getdesign.md / styles.refero.design / Google favicon proxy are explicitly NOT counted toward the TW brand-owned requirement.
40
-
41
- ## Tier 2 attempts
42
-
43
- - **getdesign.md/funnow** — WebFetch 2026-06-10 → 404 / "No designs found for 'funnow'". No brand-name variant exists (myfunnow also implausible; site search itself reported zero results).
44
- - **styles.refero.design/?q=funnow** — playwright navigate 2026-06-10 → search executed, results returned unrelated brands only (Wizz, Fold, Foodnoms, Fuser, Busuu…). FunNow not listed.
45
-
46
- → Tier 2: none available. Tier 1 live inspect carries all token claims (TW policy per `spec/regional-sources.yaml`).
47
-
48
- ## Conflict matrix
49
-
50
- | Field | Tier 1 (live) | getdesign | refero | Resolution |
51
- |---|---|---|---|---|
52
- | Primary color | `#ff5537` (CTA, tags, active tab, favicon SVG fill) | n/a (404) | n/a (not listed) | `#ff5537` — Tier 1 only, cross-confirmed by official favicon SVG `fill="#FF5537"` |
53
- | Radius | 4px (consumer product), 5px (events/merchant pages) | n/a | n/a | 4px canonical; 5px noted as merchant-surface variant — documented, not a conflict |
54
- | Heading color | `rgba(0,0,0,0.87)` (homepage H1) vs `rgb(37,39,41)` (events headings, body) | n/a | n/a | Both kept: Material 87%-black default + `#252729` charcoal; documented in §2 |
55
-
56
- No unresolved conflicts.
57
-
58
- ## Logo decision
59
-
60
- - Google s2 favicon proxy (`domain=myfunnow.com&sz=128`): 223 B PNG at **32×32** only (Google lacks a 128px render) — but visually verified as the real FunNow "f" mark in brand orange, NOT a generic globe.
61
- - `cdn.simpleicons.org/funnow` → 404. `github.com/FunNow` org exists but avatar is an auto-generated identicon (not a logo).
62
- - **Chosen:** `type: favicon, slug: https://cdn.myfunnow.com/web/images/funnow_favicon.svg` — the site's own `<link rel="icon">` asset, 517 B SVG, HTTP 200, vector brand mark with `fill="#FF5537"`. (Precedent: 29cm uses a direct brand-CDN asset URL as favicon slug.)