pm-workflow-studio 0.1.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 (592) hide show
  1. package/.claude/CLAUDE.md +31 -0
  2. package/.claude/agents/demand-analyst.md +26 -0
  3. package/.claude/agents/dev-planner.md +22 -0
  4. package/.claude/agents/product-manager.md +25 -0
  5. package/.claude/agents/quality-reviewer.md +31 -0
  6. package/.claude/agents/tech-architect.md +22 -0
  7. package/.claude/agents/ui-designer.md +39 -0
  8. package/.claude/commands/pm-workflow/analyze.md +6 -0
  9. package/.claude/commands/pm-workflow/architect.md +6 -0
  10. package/.claude/commands/pm-workflow/deliver.md +6 -0
  11. package/.claude/commands/pm-workflow/design.md +6 -0
  12. package/.claude/commands/pm-workflow/help.md +6 -0
  13. package/.claude/commands/pm-workflow/init.md +8 -0
  14. package/.claude/commands/pm-workflow/plan.md +6 -0
  15. package/.claude/commands/pm-workflow/review.md +6 -0
  16. package/.claude/commands/pm-workflow/status.md +6 -0
  17. package/.claude/commands/pm-workflow.md +13 -0
  18. package/.claude/settings.json +15 -0
  19. package/.claude/skills/demand-analysis/SKILL.md +50 -0
  20. package/.claude/skills/demand-analysis/templates/handoff-prd.md +39 -0
  21. package/.claude/skills/demand-analysis/templates/prd.md +85 -0
  22. package/.claude/skills/dev-task-planning/SKILL.md +37 -0
  23. package/.claude/skills/dev-task-planning/templates/dev-tasks.md +54 -0
  24. package/.claude/skills/impeccable/SKILL.md +169 -0
  25. package/.claude/skills/impeccable/reference/adapt.md +190 -0
  26. package/.claude/skills/impeccable/reference/animate.md +175 -0
  27. package/.claude/skills/impeccable/reference/audit.md +133 -0
  28. package/.claude/skills/impeccable/reference/bolder.md +113 -0
  29. package/.claude/skills/impeccable/reference/brand.md +118 -0
  30. package/.claude/skills/impeccable/reference/clarify.md +174 -0
  31. package/.claude/skills/impeccable/reference/codex.md +105 -0
  32. package/.claude/skills/impeccable/reference/cognitive-load.md +106 -0
  33. package/.claude/skills/impeccable/reference/color-and-contrast.md +105 -0
  34. package/.claude/skills/impeccable/reference/colorize.md +154 -0
  35. package/.claude/skills/impeccable/reference/craft.md +123 -0
  36. package/.claude/skills/impeccable/reference/critique.md +236 -0
  37. package/.claude/skills/impeccable/reference/delight.md +302 -0
  38. package/.claude/skills/impeccable/reference/distill.md +111 -0
  39. package/.claude/skills/impeccable/reference/document.md +427 -0
  40. package/.claude/skills/impeccable/reference/extract.md +69 -0
  41. package/.claude/skills/impeccable/reference/harden.md +347 -0
  42. package/.claude/skills/impeccable/reference/heuristics-scoring.md +234 -0
  43. package/.claude/skills/impeccable/reference/interaction-design.md +195 -0
  44. package/.claude/skills/impeccable/reference/layout.md +141 -0
  45. package/.claude/skills/impeccable/reference/live.md +622 -0
  46. package/.claude/skills/impeccable/reference/motion-design.md +109 -0
  47. package/.claude/skills/impeccable/reference/onboard.md +234 -0
  48. package/.claude/skills/impeccable/reference/optimize.md +258 -0
  49. package/.claude/skills/impeccable/reference/overdrive.md +130 -0
  50. package/.claude/skills/impeccable/reference/personas.md +179 -0
  51. package/.claude/skills/impeccable/reference/polish.md +242 -0
  52. package/.claude/skills/impeccable/reference/product.md +62 -0
  53. package/.claude/skills/impeccable/reference/quieter.md +99 -0
  54. package/.claude/skills/impeccable/reference/responsive-design.md +114 -0
  55. package/.claude/skills/impeccable/reference/shape.md +165 -0
  56. package/.claude/skills/impeccable/reference/spatial-design.md +100 -0
  57. package/.claude/skills/impeccable/reference/teach.md +156 -0
  58. package/.claude/skills/impeccable/reference/typeset.md +124 -0
  59. package/.claude/skills/impeccable/reference/typography.md +159 -0
  60. package/.claude/skills/impeccable/reference/ux-writing.md +107 -0
  61. package/.claude/skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
  62. package/.claude/skills/impeccable/scripts/command-metadata.json +94 -0
  63. package/.claude/skills/impeccable/scripts/critique-storage.mjs +242 -0
  64. package/.claude/skills/impeccable/scripts/design-parser.mjs +820 -0
  65. package/.claude/skills/impeccable/scripts/detect-csp.mjs +198 -0
  66. package/.claude/skills/impeccable/scripts/detect.mjs +21 -0
  67. package/.claude/skills/impeccable/scripts/detector/browser/injected/index.mjs +1688 -0
  68. package/.claude/skills/impeccable/scripts/detector/cli/main.mjs +232 -0
  69. package/.claude/skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4030 -0
  70. package/.claude/skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
  71. package/.claude/skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +251 -0
  72. package/.claude/skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +420 -0
  73. package/.claude/skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +954 -0
  74. package/.claude/skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +174 -0
  75. package/.claude/skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
  76. package/.claude/skills/impeccable/scripts/detector/findings.mjs +12 -0
  77. package/.claude/skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
  78. package/.claude/skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
  79. package/.claude/skills/impeccable/scripts/detector/registry/antipatterns.mjs +278 -0
  80. package/.claude/skills/impeccable/scripts/detector/rules/checks.mjs +1948 -0
  81. package/.claude/skills/impeccable/scripts/detector/shared/color.mjs +124 -0
  82. package/.claude/skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
  83. package/.claude/skills/impeccable/scripts/detector/shared/page.mjs +7 -0
  84. package/.claude/skills/impeccable/scripts/impeccable-paths.mjs +110 -0
  85. package/.claude/skills/impeccable/scripts/is-generated.mjs +69 -0
  86. package/.claude/skills/impeccable/scripts/live-accept.mjs +595 -0
  87. package/.claude/skills/impeccable/scripts/live-browser-session.js +123 -0
  88. package/.claude/skills/impeccable/scripts/live-browser.js +4860 -0
  89. package/.claude/skills/impeccable/scripts/live-complete.mjs +75 -0
  90. package/.claude/skills/impeccable/scripts/live-completion.mjs +18 -0
  91. package/.claude/skills/impeccable/scripts/live-inject.mjs +446 -0
  92. package/.claude/skills/impeccable/scripts/live-poll.mjs +200 -0
  93. package/.claude/skills/impeccable/scripts/live-resume.mjs +48 -0
  94. package/.claude/skills/impeccable/scripts/live-server.mjs +838 -0
  95. package/.claude/skills/impeccable/scripts/live-session-store.mjs +254 -0
  96. package/.claude/skills/impeccable/scripts/live-status.mjs +47 -0
  97. package/.claude/skills/impeccable/scripts/live-wrap.mjs +632 -0
  98. package/.claude/skills/impeccable/scripts/live.mjs +247 -0
  99. package/.claude/skills/impeccable/scripts/load-context.mjs +141 -0
  100. package/.claude/skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
  101. package/.claude/skills/impeccable/scripts/pin.mjs +214 -0
  102. package/.claude/skills/pm-workflow/SKILL.md +371 -0
  103. package/.claude/skills/pm-workflow/assets/design-themes/README.md +56 -0
  104. package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_COMMIT +1 -0
  105. package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_IMPORT.md +28 -0
  106. package/.claude/skills/pm-workflow/assets/design-themes/open-design/OPEN_DESIGN_LICENSE +201 -0
  107. package/.claude/skills/pm-workflow/assets/design-themes/open-design/README.md +103 -0
  108. package/.claude/skills/pm-workflow/assets/design-themes/open-design/agentic/DESIGN.md +71 -0
  109. package/.claude/skills/pm-workflow/assets/design-themes/open-design/airbnb/DESIGN.md +393 -0
  110. package/.claude/skills/pm-workflow/assets/design-themes/open-design/airbnb/examples.html +23 -0
  111. package/.claude/skills/pm-workflow/assets/design-themes/open-design/airtable/DESIGN.md +92 -0
  112. package/.claude/skills/pm-workflow/assets/design-themes/open-design/apple/DESIGN.md +250 -0
  113. package/.claude/skills/pm-workflow/assets/design-themes/open-design/apple/examples.html +23 -0
  114. package/.claude/skills/pm-workflow/assets/design-themes/open-design/application/DESIGN.md +71 -0
  115. package/.claude/skills/pm-workflow/assets/design-themes/open-design/arc/DESIGN.md +152 -0
  116. package/.claude/skills/pm-workflow/assets/design-themes/open-design/artistic/DESIGN.md +71 -0
  117. package/.claude/skills/pm-workflow/assets/design-themes/open-design/atelier-zero/DESIGN.md +316 -0
  118. package/.claude/skills/pm-workflow/assets/design-themes/open-design/bento/DESIGN.md +71 -0
  119. package/.claude/skills/pm-workflow/assets/design-themes/open-design/binance/DESIGN.md +348 -0
  120. package/.claude/skills/pm-workflow/assets/design-themes/open-design/bmw/DESIGN.md +183 -0
  121. package/.claude/skills/pm-workflow/assets/design-themes/open-design/bmw-m/DESIGN.md +246 -0
  122. package/.claude/skills/pm-workflow/assets/design-themes/open-design/bold/DESIGN.md +71 -0
  123. package/.claude/skills/pm-workflow/assets/design-themes/open-design/brutalism/DESIGN.md +71 -0
  124. package/.claude/skills/pm-workflow/assets/design-themes/open-design/bugatti/DESIGN.md +271 -0
  125. package/.claude/skills/pm-workflow/assets/design-themes/open-design/cafe/DESIGN.md +71 -0
  126. package/.claude/skills/pm-workflow/assets/design-themes/open-design/cal/DESIGN.md +262 -0
  127. package/.claude/skills/pm-workflow/assets/design-themes/open-design/canva/DESIGN.md +157 -0
  128. package/.claude/skills/pm-workflow/assets/design-themes/open-design/cisco/DESIGN.md +201 -0
  129. package/.claude/skills/pm-workflow/assets/design-themes/open-design/claude/DESIGN.md +315 -0
  130. package/.claude/skills/pm-workflow/assets/design-themes/open-design/clay/DESIGN.md +307 -0
  131. package/.claude/skills/pm-workflow/assets/design-themes/open-design/claymorphism/DESIGN.md +71 -0
  132. package/.claude/skills/pm-workflow/assets/design-themes/open-design/clean/DESIGN.md +71 -0
  133. package/.claude/skills/pm-workflow/assets/design-themes/open-design/clickhouse/DESIGN.md +284 -0
  134. package/.claude/skills/pm-workflow/assets/design-themes/open-design/cohere/DESIGN.md +269 -0
  135. package/.claude/skills/pm-workflow/assets/design-themes/open-design/coinbase/DESIGN.md +132 -0
  136. package/.claude/skills/pm-workflow/assets/design-themes/open-design/colorful/DESIGN.md +71 -0
  137. package/.claude/skills/pm-workflow/assets/design-themes/open-design/composio/DESIGN.md +310 -0
  138. package/.claude/skills/pm-workflow/assets/design-themes/open-design/contemporary/DESIGN.md +71 -0
  139. package/.claude/skills/pm-workflow/assets/design-themes/open-design/corporate/DESIGN.md +71 -0
  140. package/.claude/skills/pm-workflow/assets/design-themes/open-design/cosmic/DESIGN.md +71 -0
  141. package/.claude/skills/pm-workflow/assets/design-themes/open-design/creative/DESIGN.md +71 -0
  142. package/.claude/skills/pm-workflow/assets/design-themes/open-design/cursor/DESIGN.md +312 -0
  143. package/.claude/skills/pm-workflow/assets/design-themes/open-design/dashboard/DESIGN.md +71 -0
  144. package/.claude/skills/pm-workflow/assets/design-themes/open-design/default/DESIGN.md +62 -0
  145. package/.claude/skills/pm-workflow/assets/design-themes/open-design/discord/DESIGN.md +162 -0
  146. package/.claude/skills/pm-workflow/assets/design-themes/open-design/dithered/DESIGN.md +71 -0
  147. package/.claude/skills/pm-workflow/assets/design-themes/open-design/doodle/DESIGN.md +71 -0
  148. package/.claude/skills/pm-workflow/assets/design-themes/open-design/dramatic/DESIGN.md +71 -0
  149. package/.claude/skills/pm-workflow/assets/design-themes/open-design/duolingo/DESIGN.md +154 -0
  150. package/.claude/skills/pm-workflow/assets/design-themes/open-design/editorial/DESIGN.md +71 -0
  151. package/.claude/skills/pm-workflow/assets/design-themes/open-design/elegant/DESIGN.md +71 -0
  152. package/.claude/skills/pm-workflow/assets/design-themes/open-design/elevenlabs/DESIGN.md +268 -0
  153. package/.claude/skills/pm-workflow/assets/design-themes/open-design/energetic/DESIGN.md +72 -0
  154. package/.claude/skills/pm-workflow/assets/design-themes/open-design/enterprise/DESIGN.md +71 -0
  155. package/.claude/skills/pm-workflow/assets/design-themes/open-design/expo/DESIGN.md +284 -0
  156. package/.claude/skills/pm-workflow/assets/design-themes/open-design/expressive/DESIGN.md +71 -0
  157. package/.claude/skills/pm-workflow/assets/design-themes/open-design/fantasy/DESIGN.md +71 -0
  158. package/.claude/skills/pm-workflow/assets/design-themes/open-design/ferrari/DESIGN.md +317 -0
  159. package/.claude/skills/pm-workflow/assets/design-themes/open-design/figma/DESIGN.md +223 -0
  160. package/.claude/skills/pm-workflow/assets/design-themes/open-design/flat/DESIGN.md +71 -0
  161. package/.claude/skills/pm-workflow/assets/design-themes/open-design/framer/DESIGN.md +249 -0
  162. package/.claude/skills/pm-workflow/assets/design-themes/open-design/friendly/DESIGN.md +71 -0
  163. package/.claude/skills/pm-workflow/assets/design-themes/open-design/futuristic/DESIGN.md +71 -0
  164. package/.claude/skills/pm-workflow/assets/design-themes/open-design/glassmorphism/DESIGN.md +71 -0
  165. package/.claude/skills/pm-workflow/assets/design-themes/open-design/gradient/DESIGN.md +71 -0
  166. package/.claude/skills/pm-workflow/assets/design-themes/open-design/hashicorp/DESIGN.md +281 -0
  167. package/.claude/skills/pm-workflow/assets/design-themes/open-design/hud/DESIGN.md +173 -0
  168. package/.claude/skills/pm-workflow/assets/design-themes/open-design/huggingface/DESIGN.md +149 -0
  169. package/.claude/skills/pm-workflow/assets/design-themes/open-design/huggingface/examples.html +11 -0
  170. package/.claude/skills/pm-workflow/assets/design-themes/open-design/intercom/DESIGN.md +149 -0
  171. package/.claude/skills/pm-workflow/assets/design-themes/open-design/kami/DESIGN.md +410 -0
  172. package/.claude/skills/pm-workflow/assets/design-themes/open-design/kraken/DESIGN.md +128 -0
  173. package/.claude/skills/pm-workflow/assets/design-themes/open-design/lamborghini/DESIGN.md +291 -0
  174. package/.claude/skills/pm-workflow/assets/design-themes/open-design/levels/DESIGN.md +71 -0
  175. package/.claude/skills/pm-workflow/assets/design-themes/open-design/linear-app/DESIGN.md +370 -0
  176. package/.claude/skills/pm-workflow/assets/design-themes/open-design/linear-app/examples.html +56 -0
  177. package/.claude/skills/pm-workflow/assets/design-themes/open-design/lingo/DESIGN.md +71 -0
  178. package/.claude/skills/pm-workflow/assets/design-themes/open-design/loom/DESIGN.md +201 -0
  179. package/.claude/skills/pm-workflow/assets/design-themes/open-design/lovable/DESIGN.md +301 -0
  180. package/.claude/skills/pm-workflow/assets/design-themes/open-design/luxury/DESIGN.md +71 -0
  181. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mastercard/DESIGN.md +368 -0
  182. package/.claude/skills/pm-workflow/assets/design-themes/open-design/material/DESIGN.md +71 -0
  183. package/.claude/skills/pm-workflow/assets/design-themes/open-design/material/examples.html +11 -0
  184. package/.claude/skills/pm-workflow/assets/design-themes/open-design/meta/DESIGN.md +369 -0
  185. package/.claude/skills/pm-workflow/assets/design-themes/open-design/minimal/DESIGN.md +71 -0
  186. package/.claude/skills/pm-workflow/assets/design-themes/open-design/minimax/DESIGN.md +260 -0
  187. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mintlify/DESIGN.md +329 -0
  188. package/.claude/skills/pm-workflow/assets/design-themes/open-design/miro/DESIGN.md +111 -0
  189. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mission-control/DESIGN.md +474 -0
  190. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mistral-ai/DESIGN.md +264 -0
  191. package/.claude/skills/pm-workflow/assets/design-themes/open-design/modern/DESIGN.md +71 -0
  192. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mongodb/DESIGN.md +269 -0
  193. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mongodb/examples.html +14 -0
  194. package/.claude/skills/pm-workflow/assets/design-themes/open-design/mono/DESIGN.md +71 -0
  195. package/.claude/skills/pm-workflow/assets/design-themes/open-design/neobrutalism/DESIGN.md +71 -0
  196. package/.claude/skills/pm-workflow/assets/design-themes/open-design/neon/DESIGN.md +71 -0
  197. package/.claude/skills/pm-workflow/assets/design-themes/open-design/neumorphism/DESIGN.md +71 -0
  198. package/.claude/skills/pm-workflow/assets/design-themes/open-design/nike/DESIGN.md +366 -0
  199. package/.claude/skills/pm-workflow/assets/design-themes/open-design/notion/DESIGN.md +312 -0
  200. package/.claude/skills/pm-workflow/assets/design-themes/open-design/notion/examples.html +64 -0
  201. package/.claude/skills/pm-workflow/assets/design-themes/open-design/nvidia/DESIGN.md +296 -0
  202. package/.claude/skills/pm-workflow/assets/design-themes/open-design/ollama/DESIGN.md +270 -0
  203. package/.claude/skills/pm-workflow/assets/design-themes/open-design/openai/DESIGN.md +140 -0
  204. package/.claude/skills/pm-workflow/assets/design-themes/open-design/openai/examples.html +14 -0
  205. package/.claude/skills/pm-workflow/assets/design-themes/open-design/opencode-ai/DESIGN.md +284 -0
  206. package/.claude/skills/pm-workflow/assets/design-themes/open-design/pacman/DESIGN.md +71 -0
  207. package/.claude/skills/pm-workflow/assets/design-themes/open-design/paper/DESIGN.md +71 -0
  208. package/.claude/skills/pm-workflow/assets/design-themes/open-design/perspective/DESIGN.md +71 -0
  209. package/.claude/skills/pm-workflow/assets/design-themes/open-design/pinterest/DESIGN.md +233 -0
  210. package/.claude/skills/pm-workflow/assets/design-themes/open-design/playstation/DESIGN.md +367 -0
  211. package/.claude/skills/pm-workflow/assets/design-themes/open-design/posthog/DESIGN.md +259 -0
  212. package/.claude/skills/pm-workflow/assets/design-themes/open-design/premium/DESIGN.md +71 -0
  213. package/.claude/skills/pm-workflow/assets/design-themes/open-design/professional/DESIGN.md +71 -0
  214. package/.claude/skills/pm-workflow/assets/design-themes/open-design/publication/DESIGN.md +71 -0
  215. package/.claude/skills/pm-workflow/assets/design-themes/open-design/raycast/DESIGN.md +271 -0
  216. package/.claude/skills/pm-workflow/assets/design-themes/open-design/raycast/examples.html +11 -0
  217. package/.claude/skills/pm-workflow/assets/design-themes/open-design/refined/DESIGN.md +71 -0
  218. package/.claude/skills/pm-workflow/assets/design-themes/open-design/renault/DESIGN.md +314 -0
  219. package/.claude/skills/pm-workflow/assets/design-themes/open-design/replicate/DESIGN.md +264 -0
  220. package/.claude/skills/pm-workflow/assets/design-themes/open-design/resend/DESIGN.md +306 -0
  221. package/.claude/skills/pm-workflow/assets/design-themes/open-design/retro/DESIGN.md +71 -0
  222. package/.claude/skills/pm-workflow/assets/design-themes/open-design/revolut/DESIGN.md +188 -0
  223. package/.claude/skills/pm-workflow/assets/design-themes/open-design/runwayml/DESIGN.md +247 -0
  224. package/.claude/skills/pm-workflow/assets/design-themes/open-design/sanity/DESIGN.md +360 -0
  225. package/.claude/skills/pm-workflow/assets/design-themes/open-design/sentry/DESIGN.md +265 -0
  226. package/.claude/skills/pm-workflow/assets/design-themes/open-design/shadcn/DESIGN.md +71 -0
  227. package/.claude/skills/pm-workflow/assets/design-themes/open-design/shadcn/examples.html +24 -0
  228. package/.claude/skills/pm-workflow/assets/design-themes/open-design/shopify/DESIGN.md +353 -0
  229. package/.claude/skills/pm-workflow/assets/design-themes/open-design/shopify/examples.html +11 -0
  230. package/.claude/skills/pm-workflow/assets/design-themes/open-design/simple/DESIGN.md +71 -0
  231. package/.claude/skills/pm-workflow/assets/design-themes/open-design/skeumorphism/DESIGN.md +71 -0
  232. package/.claude/skills/pm-workflow/assets/design-themes/open-design/sleek/DESIGN.md +71 -0
  233. package/.claude/skills/pm-workflow/assets/design-themes/open-design/spacex/DESIGN.md +197 -0
  234. package/.claude/skills/pm-workflow/assets/design-themes/open-design/spacious/DESIGN.md +71 -0
  235. package/.claude/skills/pm-workflow/assets/design-themes/open-design/spotify/DESIGN.md +249 -0
  236. package/.claude/skills/pm-workflow/assets/design-themes/open-design/starbucks/DESIGN.md +583 -0
  237. package/.claude/skills/pm-workflow/assets/design-themes/open-design/storytelling/DESIGN.md +71 -0
  238. package/.claude/skills/pm-workflow/assets/design-themes/open-design/stripe/DESIGN.md +325 -0
  239. package/.claude/skills/pm-workflow/assets/design-themes/open-design/stripe/examples.html +58 -0
  240. package/.claude/skills/pm-workflow/assets/design-themes/open-design/supabase/DESIGN.md +258 -0
  241. package/.claude/skills/pm-workflow/assets/design-themes/open-design/supabase/examples.html +26 -0
  242. package/.claude/skills/pm-workflow/assets/design-themes/open-design/superhuman/DESIGN.md +255 -0
  243. package/.claude/skills/pm-workflow/assets/design-themes/open-design/tesla/DESIGN.md +289 -0
  244. package/.claude/skills/pm-workflow/assets/design-themes/open-design/tetris/DESIGN.md +71 -0
  245. package/.claude/skills/pm-workflow/assets/design-themes/open-design/theverge/DESIGN.md +342 -0
  246. package/.claude/skills/pm-workflow/assets/design-themes/open-design/together-ai/DESIGN.md +266 -0
  247. package/.claude/skills/pm-workflow/assets/design-themes/open-design/totality-festival/DESIGN.md +206 -0
  248. package/.claude/skills/pm-workflow/assets/design-themes/open-design/trading-terminal/DESIGN.md +178 -0
  249. package/.claude/skills/pm-workflow/assets/design-themes/open-design/uber/DESIGN.md +298 -0
  250. package/.claude/skills/pm-workflow/assets/design-themes/open-design/urdu/DESIGN.md +1002 -0
  251. package/.claude/skills/pm-workflow/assets/design-themes/open-design/vercel/DESIGN.md +313 -0
  252. package/.claude/skills/pm-workflow/assets/design-themes/open-design/vercel/examples.html +55 -0
  253. package/.claude/skills/pm-workflow/assets/design-themes/open-design/vibrant/DESIGN.md +71 -0
  254. package/.claude/skills/pm-workflow/assets/design-themes/open-design/vintage/DESIGN.md +71 -0
  255. package/.claude/skills/pm-workflow/assets/design-themes/open-design/vodafone/DESIGN.md +426 -0
  256. package/.claude/skills/pm-workflow/assets/design-themes/open-design/voltagent/DESIGN.md +326 -0
  257. package/.claude/skills/pm-workflow/assets/design-themes/open-design/warm-editorial/DESIGN.md +65 -0
  258. package/.claude/skills/pm-workflow/assets/design-themes/open-design/warp/DESIGN.md +256 -0
  259. package/.claude/skills/pm-workflow/assets/design-themes/open-design/webex/DESIGN.md +207 -0
  260. package/.claude/skills/pm-workflow/assets/design-themes/open-design/webflow/DESIGN.md +95 -0
  261. package/.claude/skills/pm-workflow/assets/design-themes/open-design/webflow/examples.html +11 -0
  262. package/.claude/skills/pm-workflow/assets/design-themes/open-design/wired/DESIGN.md +281 -0
  263. package/.claude/skills/pm-workflow/assets/design-themes/open-design/wise/DESIGN.md +176 -0
  264. package/.claude/skills/pm-workflow/assets/design-themes/open-design/x-ai/DESIGN.md +260 -0
  265. package/.claude/skills/pm-workflow/assets/design-themes/open-design/x-ai/examples.html +12 -0
  266. package/.claude/skills/pm-workflow/assets/design-themes/open-design/xiaohongshu/DESIGN.md +402 -0
  267. package/.claude/skills/pm-workflow/assets/design-themes/open-design/zapier/DESIGN.md +331 -0
  268. package/.claude/skills/pm-workflow/assets/design-themes/revenuecat/DESIGN.md +209 -0
  269. package/.claude/skills/pm-workflow/assets/design-themes/revenuecat/examples.html +122 -0
  270. package/.claude/skills/pm-workflow/assets/design-themes/vben/DESIGN.md +685 -0
  271. package/.claude/skills/pm-workflow/assets/design-themes/vben/examples.html +155 -0
  272. package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/MERMAID_LICENSE +21 -0
  273. package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/SVG_PAN_ZOOM_LICENSE +23 -0
  274. package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/THIRD_PARTY_LICENSES.md +21 -0
  275. package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/mermaid.min.js +3298 -0
  276. package/.claude/skills/pm-workflow/assets/vendor/flow-viewer/svg-pan-zoom.min.js +3 -0
  277. package/.claude/skills/pm-workflow/references/commands/analyze.md +39 -0
  278. package/.claude/skills/pm-workflow/references/commands/architect.md +41 -0
  279. package/.claude/skills/pm-workflow/references/commands/deliver.md +29 -0
  280. package/.claude/skills/pm-workflow/references/commands/design.md +92 -0
  281. package/.claude/skills/pm-workflow/references/commands/help.md +24 -0
  282. package/.claude/skills/pm-workflow/references/commands/init.md +40 -0
  283. package/.claude/skills/pm-workflow/references/commands/plan.md +41 -0
  284. package/.claude/skills/pm-workflow/references/commands/review.md +33 -0
  285. package/.claude/skills/pm-workflow/references/commands/status.md +20 -0
  286. package/.claude/skills/pm-workflow/scripts/package_delivery.js +195 -0
  287. package/.claude/skills/pm-workflow/scripts/review_stage.js +622 -0
  288. package/.claude/skills/quality-review/SKILL.md +49 -0
  289. package/.claude/skills/quality-review/templates/review-stage.md +39 -0
  290. package/.claude/skills/tech-architecture/SKILL.md +49 -0
  291. package/.claude/skills/tech-architecture/templates/handoff-architecture.md +28 -0
  292. package/.claude/skills/tech-architecture/templates/tech-architecture.md +54 -0
  293. package/.claude/skills/ui-prototype-design/SKILL.md +125 -0
  294. package/.claude/skills/ui-prototype-design/templates/handoff-ui.md +40 -0
  295. package/.claude/skills/ui-prototype-design/templates/prototype-review.md +57 -0
  296. package/.claude/skills/ui-prototype-design/templates/ui-design.md +142 -0
  297. package/.codex/SKILL.md +374 -0
  298. package/.codex/agents/demand-analyst.toml +87 -0
  299. package/.codex/agents/dev-planner.toml +47 -0
  300. package/.codex/agents/openai.yaml +4 -0
  301. package/.codex/agents/product-manager.toml +81 -0
  302. package/.codex/agents/quality-reviewer.toml +76 -0
  303. package/.codex/agents/tech-architect.toml +57 -0
  304. package/.codex/agents/ui-designer.toml +132 -0
  305. package/.codex/assets/design-themes/README.md +56 -0
  306. package/.codex/assets/design-themes/open-design/OPEN_DESIGN_COMMIT +1 -0
  307. package/.codex/assets/design-themes/open-design/OPEN_DESIGN_IMPORT.md +28 -0
  308. package/.codex/assets/design-themes/open-design/OPEN_DESIGN_LICENSE +201 -0
  309. package/.codex/assets/design-themes/open-design/README.md +103 -0
  310. package/.codex/assets/design-themes/open-design/agentic/DESIGN.md +71 -0
  311. package/.codex/assets/design-themes/open-design/airbnb/DESIGN.md +393 -0
  312. package/.codex/assets/design-themes/open-design/airbnb/examples.html +23 -0
  313. package/.codex/assets/design-themes/open-design/airtable/DESIGN.md +92 -0
  314. package/.codex/assets/design-themes/open-design/apple/DESIGN.md +250 -0
  315. package/.codex/assets/design-themes/open-design/apple/examples.html +23 -0
  316. package/.codex/assets/design-themes/open-design/application/DESIGN.md +71 -0
  317. package/.codex/assets/design-themes/open-design/arc/DESIGN.md +152 -0
  318. package/.codex/assets/design-themes/open-design/artistic/DESIGN.md +71 -0
  319. package/.codex/assets/design-themes/open-design/atelier-zero/DESIGN.md +316 -0
  320. package/.codex/assets/design-themes/open-design/bento/DESIGN.md +71 -0
  321. package/.codex/assets/design-themes/open-design/binance/DESIGN.md +348 -0
  322. package/.codex/assets/design-themes/open-design/bmw/DESIGN.md +183 -0
  323. package/.codex/assets/design-themes/open-design/bmw-m/DESIGN.md +246 -0
  324. package/.codex/assets/design-themes/open-design/bold/DESIGN.md +71 -0
  325. package/.codex/assets/design-themes/open-design/brutalism/DESIGN.md +71 -0
  326. package/.codex/assets/design-themes/open-design/bugatti/DESIGN.md +271 -0
  327. package/.codex/assets/design-themes/open-design/cafe/DESIGN.md +71 -0
  328. package/.codex/assets/design-themes/open-design/cal/DESIGN.md +262 -0
  329. package/.codex/assets/design-themes/open-design/canva/DESIGN.md +157 -0
  330. package/.codex/assets/design-themes/open-design/cisco/DESIGN.md +201 -0
  331. package/.codex/assets/design-themes/open-design/claude/DESIGN.md +315 -0
  332. package/.codex/assets/design-themes/open-design/clay/DESIGN.md +307 -0
  333. package/.codex/assets/design-themes/open-design/claymorphism/DESIGN.md +71 -0
  334. package/.codex/assets/design-themes/open-design/clean/DESIGN.md +71 -0
  335. package/.codex/assets/design-themes/open-design/clickhouse/DESIGN.md +284 -0
  336. package/.codex/assets/design-themes/open-design/cohere/DESIGN.md +269 -0
  337. package/.codex/assets/design-themes/open-design/coinbase/DESIGN.md +132 -0
  338. package/.codex/assets/design-themes/open-design/colorful/DESIGN.md +71 -0
  339. package/.codex/assets/design-themes/open-design/composio/DESIGN.md +310 -0
  340. package/.codex/assets/design-themes/open-design/contemporary/DESIGN.md +71 -0
  341. package/.codex/assets/design-themes/open-design/corporate/DESIGN.md +71 -0
  342. package/.codex/assets/design-themes/open-design/cosmic/DESIGN.md +71 -0
  343. package/.codex/assets/design-themes/open-design/creative/DESIGN.md +71 -0
  344. package/.codex/assets/design-themes/open-design/cursor/DESIGN.md +312 -0
  345. package/.codex/assets/design-themes/open-design/dashboard/DESIGN.md +71 -0
  346. package/.codex/assets/design-themes/open-design/default/DESIGN.md +62 -0
  347. package/.codex/assets/design-themes/open-design/discord/DESIGN.md +162 -0
  348. package/.codex/assets/design-themes/open-design/dithered/DESIGN.md +71 -0
  349. package/.codex/assets/design-themes/open-design/doodle/DESIGN.md +71 -0
  350. package/.codex/assets/design-themes/open-design/dramatic/DESIGN.md +71 -0
  351. package/.codex/assets/design-themes/open-design/duolingo/DESIGN.md +154 -0
  352. package/.codex/assets/design-themes/open-design/editorial/DESIGN.md +71 -0
  353. package/.codex/assets/design-themes/open-design/elegant/DESIGN.md +71 -0
  354. package/.codex/assets/design-themes/open-design/elevenlabs/DESIGN.md +268 -0
  355. package/.codex/assets/design-themes/open-design/energetic/DESIGN.md +72 -0
  356. package/.codex/assets/design-themes/open-design/enterprise/DESIGN.md +71 -0
  357. package/.codex/assets/design-themes/open-design/expo/DESIGN.md +284 -0
  358. package/.codex/assets/design-themes/open-design/expressive/DESIGN.md +71 -0
  359. package/.codex/assets/design-themes/open-design/fantasy/DESIGN.md +71 -0
  360. package/.codex/assets/design-themes/open-design/ferrari/DESIGN.md +317 -0
  361. package/.codex/assets/design-themes/open-design/figma/DESIGN.md +223 -0
  362. package/.codex/assets/design-themes/open-design/flat/DESIGN.md +71 -0
  363. package/.codex/assets/design-themes/open-design/framer/DESIGN.md +249 -0
  364. package/.codex/assets/design-themes/open-design/friendly/DESIGN.md +71 -0
  365. package/.codex/assets/design-themes/open-design/futuristic/DESIGN.md +71 -0
  366. package/.codex/assets/design-themes/open-design/glassmorphism/DESIGN.md +71 -0
  367. package/.codex/assets/design-themes/open-design/gradient/DESIGN.md +71 -0
  368. package/.codex/assets/design-themes/open-design/hashicorp/DESIGN.md +281 -0
  369. package/.codex/assets/design-themes/open-design/hud/DESIGN.md +173 -0
  370. package/.codex/assets/design-themes/open-design/huggingface/DESIGN.md +149 -0
  371. package/.codex/assets/design-themes/open-design/huggingface/examples.html +11 -0
  372. package/.codex/assets/design-themes/open-design/intercom/DESIGN.md +149 -0
  373. package/.codex/assets/design-themes/open-design/kami/DESIGN.md +410 -0
  374. package/.codex/assets/design-themes/open-design/kraken/DESIGN.md +128 -0
  375. package/.codex/assets/design-themes/open-design/lamborghini/DESIGN.md +291 -0
  376. package/.codex/assets/design-themes/open-design/levels/DESIGN.md +71 -0
  377. package/.codex/assets/design-themes/open-design/linear-app/DESIGN.md +370 -0
  378. package/.codex/assets/design-themes/open-design/linear-app/examples.html +56 -0
  379. package/.codex/assets/design-themes/open-design/lingo/DESIGN.md +71 -0
  380. package/.codex/assets/design-themes/open-design/loom/DESIGN.md +201 -0
  381. package/.codex/assets/design-themes/open-design/lovable/DESIGN.md +301 -0
  382. package/.codex/assets/design-themes/open-design/luxury/DESIGN.md +71 -0
  383. package/.codex/assets/design-themes/open-design/mastercard/DESIGN.md +368 -0
  384. package/.codex/assets/design-themes/open-design/material/DESIGN.md +71 -0
  385. package/.codex/assets/design-themes/open-design/material/examples.html +11 -0
  386. package/.codex/assets/design-themes/open-design/meta/DESIGN.md +369 -0
  387. package/.codex/assets/design-themes/open-design/minimal/DESIGN.md +71 -0
  388. package/.codex/assets/design-themes/open-design/minimax/DESIGN.md +260 -0
  389. package/.codex/assets/design-themes/open-design/mintlify/DESIGN.md +329 -0
  390. package/.codex/assets/design-themes/open-design/miro/DESIGN.md +111 -0
  391. package/.codex/assets/design-themes/open-design/mission-control/DESIGN.md +474 -0
  392. package/.codex/assets/design-themes/open-design/mistral-ai/DESIGN.md +264 -0
  393. package/.codex/assets/design-themes/open-design/modern/DESIGN.md +71 -0
  394. package/.codex/assets/design-themes/open-design/mongodb/DESIGN.md +269 -0
  395. package/.codex/assets/design-themes/open-design/mongodb/examples.html +14 -0
  396. package/.codex/assets/design-themes/open-design/mono/DESIGN.md +71 -0
  397. package/.codex/assets/design-themes/open-design/neobrutalism/DESIGN.md +71 -0
  398. package/.codex/assets/design-themes/open-design/neon/DESIGN.md +71 -0
  399. package/.codex/assets/design-themes/open-design/neumorphism/DESIGN.md +71 -0
  400. package/.codex/assets/design-themes/open-design/nike/DESIGN.md +366 -0
  401. package/.codex/assets/design-themes/open-design/notion/DESIGN.md +312 -0
  402. package/.codex/assets/design-themes/open-design/notion/examples.html +64 -0
  403. package/.codex/assets/design-themes/open-design/nvidia/DESIGN.md +296 -0
  404. package/.codex/assets/design-themes/open-design/ollama/DESIGN.md +270 -0
  405. package/.codex/assets/design-themes/open-design/openai/DESIGN.md +140 -0
  406. package/.codex/assets/design-themes/open-design/openai/examples.html +14 -0
  407. package/.codex/assets/design-themes/open-design/opencode-ai/DESIGN.md +284 -0
  408. package/.codex/assets/design-themes/open-design/pacman/DESIGN.md +71 -0
  409. package/.codex/assets/design-themes/open-design/paper/DESIGN.md +71 -0
  410. package/.codex/assets/design-themes/open-design/perspective/DESIGN.md +71 -0
  411. package/.codex/assets/design-themes/open-design/pinterest/DESIGN.md +233 -0
  412. package/.codex/assets/design-themes/open-design/playstation/DESIGN.md +367 -0
  413. package/.codex/assets/design-themes/open-design/posthog/DESIGN.md +259 -0
  414. package/.codex/assets/design-themes/open-design/premium/DESIGN.md +71 -0
  415. package/.codex/assets/design-themes/open-design/professional/DESIGN.md +71 -0
  416. package/.codex/assets/design-themes/open-design/publication/DESIGN.md +71 -0
  417. package/.codex/assets/design-themes/open-design/raycast/DESIGN.md +271 -0
  418. package/.codex/assets/design-themes/open-design/raycast/examples.html +11 -0
  419. package/.codex/assets/design-themes/open-design/refined/DESIGN.md +71 -0
  420. package/.codex/assets/design-themes/open-design/renault/DESIGN.md +314 -0
  421. package/.codex/assets/design-themes/open-design/replicate/DESIGN.md +264 -0
  422. package/.codex/assets/design-themes/open-design/resend/DESIGN.md +306 -0
  423. package/.codex/assets/design-themes/open-design/retro/DESIGN.md +71 -0
  424. package/.codex/assets/design-themes/open-design/revolut/DESIGN.md +188 -0
  425. package/.codex/assets/design-themes/open-design/runwayml/DESIGN.md +247 -0
  426. package/.codex/assets/design-themes/open-design/sanity/DESIGN.md +360 -0
  427. package/.codex/assets/design-themes/open-design/sentry/DESIGN.md +265 -0
  428. package/.codex/assets/design-themes/open-design/shadcn/DESIGN.md +71 -0
  429. package/.codex/assets/design-themes/open-design/shadcn/examples.html +24 -0
  430. package/.codex/assets/design-themes/open-design/shopify/DESIGN.md +353 -0
  431. package/.codex/assets/design-themes/open-design/shopify/examples.html +11 -0
  432. package/.codex/assets/design-themes/open-design/simple/DESIGN.md +71 -0
  433. package/.codex/assets/design-themes/open-design/skeumorphism/DESIGN.md +71 -0
  434. package/.codex/assets/design-themes/open-design/sleek/DESIGN.md +71 -0
  435. package/.codex/assets/design-themes/open-design/spacex/DESIGN.md +197 -0
  436. package/.codex/assets/design-themes/open-design/spacious/DESIGN.md +71 -0
  437. package/.codex/assets/design-themes/open-design/spotify/DESIGN.md +249 -0
  438. package/.codex/assets/design-themes/open-design/starbucks/DESIGN.md +583 -0
  439. package/.codex/assets/design-themes/open-design/storytelling/DESIGN.md +71 -0
  440. package/.codex/assets/design-themes/open-design/stripe/DESIGN.md +325 -0
  441. package/.codex/assets/design-themes/open-design/stripe/examples.html +58 -0
  442. package/.codex/assets/design-themes/open-design/supabase/DESIGN.md +258 -0
  443. package/.codex/assets/design-themes/open-design/supabase/examples.html +26 -0
  444. package/.codex/assets/design-themes/open-design/superhuman/DESIGN.md +255 -0
  445. package/.codex/assets/design-themes/open-design/tesla/DESIGN.md +289 -0
  446. package/.codex/assets/design-themes/open-design/tetris/DESIGN.md +71 -0
  447. package/.codex/assets/design-themes/open-design/theverge/DESIGN.md +342 -0
  448. package/.codex/assets/design-themes/open-design/together-ai/DESIGN.md +266 -0
  449. package/.codex/assets/design-themes/open-design/totality-festival/DESIGN.md +206 -0
  450. package/.codex/assets/design-themes/open-design/trading-terminal/DESIGN.md +178 -0
  451. package/.codex/assets/design-themes/open-design/uber/DESIGN.md +298 -0
  452. package/.codex/assets/design-themes/open-design/urdu/DESIGN.md +1002 -0
  453. package/.codex/assets/design-themes/open-design/vercel/DESIGN.md +313 -0
  454. package/.codex/assets/design-themes/open-design/vercel/examples.html +55 -0
  455. package/.codex/assets/design-themes/open-design/vibrant/DESIGN.md +71 -0
  456. package/.codex/assets/design-themes/open-design/vintage/DESIGN.md +71 -0
  457. package/.codex/assets/design-themes/open-design/vodafone/DESIGN.md +426 -0
  458. package/.codex/assets/design-themes/open-design/voltagent/DESIGN.md +326 -0
  459. package/.codex/assets/design-themes/open-design/warm-editorial/DESIGN.md +65 -0
  460. package/.codex/assets/design-themes/open-design/warp/DESIGN.md +256 -0
  461. package/.codex/assets/design-themes/open-design/webex/DESIGN.md +207 -0
  462. package/.codex/assets/design-themes/open-design/webflow/DESIGN.md +95 -0
  463. package/.codex/assets/design-themes/open-design/webflow/examples.html +11 -0
  464. package/.codex/assets/design-themes/open-design/wired/DESIGN.md +281 -0
  465. package/.codex/assets/design-themes/open-design/wise/DESIGN.md +176 -0
  466. package/.codex/assets/design-themes/open-design/x-ai/DESIGN.md +260 -0
  467. package/.codex/assets/design-themes/open-design/x-ai/examples.html +12 -0
  468. package/.codex/assets/design-themes/open-design/xiaohongshu/DESIGN.md +402 -0
  469. package/.codex/assets/design-themes/open-design/zapier/DESIGN.md +331 -0
  470. package/.codex/assets/design-themes/revenuecat/DESIGN.md +209 -0
  471. package/.codex/assets/design-themes/revenuecat/examples.html +122 -0
  472. package/.codex/assets/design-themes/vben/DESIGN.md +685 -0
  473. package/.codex/assets/design-themes/vben/examples.html +155 -0
  474. package/.codex/assets/vendor/flow-viewer/MERMAID_LICENSE +21 -0
  475. package/.codex/assets/vendor/flow-viewer/SVG_PAN_ZOOM_LICENSE +23 -0
  476. package/.codex/assets/vendor/flow-viewer/THIRD_PARTY_LICENSES.md +21 -0
  477. package/.codex/assets/vendor/flow-viewer/mermaid.min.js +3298 -0
  478. package/.codex/assets/vendor/flow-viewer/svg-pan-zoom.min.js +3 -0
  479. package/.codex/bundled-skills/impeccable/SKILL.md +163 -0
  480. package/.codex/bundled-skills/impeccable/agents/openai.yaml +4 -0
  481. package/.codex/bundled-skills/impeccable/reference/adapt.md +190 -0
  482. package/.codex/bundled-skills/impeccable/reference/animate.md +175 -0
  483. package/.codex/bundled-skills/impeccable/reference/audit.md +132 -0
  484. package/.codex/bundled-skills/impeccable/reference/bolder.md +113 -0
  485. package/.codex/bundled-skills/impeccable/reference/brand.md +118 -0
  486. package/.codex/bundled-skills/impeccable/reference/clarify.md +174 -0
  487. package/.codex/bundled-skills/impeccable/reference/codex.md +105 -0
  488. package/.codex/bundled-skills/impeccable/reference/cognitive-load.md +106 -0
  489. package/.codex/bundled-skills/impeccable/reference/color-and-contrast.md +105 -0
  490. package/.codex/bundled-skills/impeccable/reference/colorize.md +154 -0
  491. package/.codex/bundled-skills/impeccable/reference/craft.md +123 -0
  492. package/.codex/bundled-skills/impeccable/reference/critique.md +259 -0
  493. package/.codex/bundled-skills/impeccable/reference/delight.md +302 -0
  494. package/.codex/bundled-skills/impeccable/reference/distill.md +111 -0
  495. package/.codex/bundled-skills/impeccable/reference/document.md +427 -0
  496. package/.codex/bundled-skills/impeccable/reference/extract.md +68 -0
  497. package/.codex/bundled-skills/impeccable/reference/harden.md +347 -0
  498. package/.codex/bundled-skills/impeccable/reference/heuristics-scoring.md +234 -0
  499. package/.codex/bundled-skills/impeccable/reference/interaction-design.md +195 -0
  500. package/.codex/bundled-skills/impeccable/reference/layout.md +141 -0
  501. package/.codex/bundled-skills/impeccable/reference/live.md +622 -0
  502. package/.codex/bundled-skills/impeccable/reference/motion-design.md +109 -0
  503. package/.codex/bundled-skills/impeccable/reference/onboard.md +234 -0
  504. package/.codex/bundled-skills/impeccable/reference/optimize.md +258 -0
  505. package/.codex/bundled-skills/impeccable/reference/overdrive.md +130 -0
  506. package/.codex/bundled-skills/impeccable/reference/personas.md +179 -0
  507. package/.codex/bundled-skills/impeccable/reference/polish.md +242 -0
  508. package/.codex/bundled-skills/impeccable/reference/product.md +62 -0
  509. package/.codex/bundled-skills/impeccable/reference/quieter.md +99 -0
  510. package/.codex/bundled-skills/impeccable/reference/responsive-design.md +114 -0
  511. package/.codex/bundled-skills/impeccable/reference/shape.md +165 -0
  512. package/.codex/bundled-skills/impeccable/reference/spatial-design.md +100 -0
  513. package/.codex/bundled-skills/impeccable/reference/teach.md +156 -0
  514. package/.codex/bundled-skills/impeccable/reference/typeset.md +124 -0
  515. package/.codex/bundled-skills/impeccable/reference/typography.md +159 -0
  516. package/.codex/bundled-skills/impeccable/reference/ux-writing.md +107 -0
  517. package/.codex/bundled-skills/impeccable/scripts/cleanup-deprecated.mjs +284 -0
  518. package/.codex/bundled-skills/impeccable/scripts/command-metadata.json +94 -0
  519. package/.codex/bundled-skills/impeccable/scripts/critique-storage.mjs +242 -0
  520. package/.codex/bundled-skills/impeccable/scripts/design-parser.mjs +820 -0
  521. package/.codex/bundled-skills/impeccable/scripts/detect-csp.mjs +198 -0
  522. package/.codex/bundled-skills/impeccable/scripts/detect.mjs +21 -0
  523. package/.codex/bundled-skills/impeccable/scripts/detector/browser/injected/index.mjs +1688 -0
  524. package/.codex/bundled-skills/impeccable/scripts/detector/cli/main.mjs +232 -0
  525. package/.codex/bundled-skills/impeccable/scripts/detector/detect-antipatterns-browser.js +4030 -0
  526. package/.codex/bundled-skills/impeccable/scripts/detector/detect-antipatterns.mjs +43 -0
  527. package/.codex/bundled-skills/impeccable/scripts/detector/engines/browser/detect-url.mjs +251 -0
  528. package/.codex/bundled-skills/impeccable/scripts/detector/engines/regex/detect-text.mjs +420 -0
  529. package/.codex/bundled-skills/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +954 -0
  530. package/.codex/bundled-skills/impeccable/scripts/detector/engines/static-html/detect-html.mjs +174 -0
  531. package/.codex/bundled-skills/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +189 -0
  532. package/.codex/bundled-skills/impeccable/scripts/detector/findings.mjs +12 -0
  533. package/.codex/bundled-skills/impeccable/scripts/detector/node/file-system.mjs +198 -0
  534. package/.codex/bundled-skills/impeccable/scripts/detector/profile/profiler.mjs +166 -0
  535. package/.codex/bundled-skills/impeccable/scripts/detector/registry/antipatterns.mjs +278 -0
  536. package/.codex/bundled-skills/impeccable/scripts/detector/rules/checks.mjs +1948 -0
  537. package/.codex/bundled-skills/impeccable/scripts/detector/shared/color.mjs +124 -0
  538. package/.codex/bundled-skills/impeccable/scripts/detector/shared/constants.mjs +101 -0
  539. package/.codex/bundled-skills/impeccable/scripts/detector/shared/page.mjs +7 -0
  540. package/.codex/bundled-skills/impeccable/scripts/impeccable-paths.mjs +110 -0
  541. package/.codex/bundled-skills/impeccable/scripts/is-generated.mjs +69 -0
  542. package/.codex/bundled-skills/impeccable/scripts/live-accept.mjs +595 -0
  543. package/.codex/bundled-skills/impeccable/scripts/live-browser-session.js +123 -0
  544. package/.codex/bundled-skills/impeccable/scripts/live-browser.js +4860 -0
  545. package/.codex/bundled-skills/impeccable/scripts/live-complete.mjs +75 -0
  546. package/.codex/bundled-skills/impeccable/scripts/live-completion.mjs +18 -0
  547. package/.codex/bundled-skills/impeccable/scripts/live-inject.mjs +446 -0
  548. package/.codex/bundled-skills/impeccable/scripts/live-poll.mjs +200 -0
  549. package/.codex/bundled-skills/impeccable/scripts/live-resume.mjs +48 -0
  550. package/.codex/bundled-skills/impeccable/scripts/live-server.mjs +838 -0
  551. package/.codex/bundled-skills/impeccable/scripts/live-session-store.mjs +254 -0
  552. package/.codex/bundled-skills/impeccable/scripts/live-status.mjs +47 -0
  553. package/.codex/bundled-skills/impeccable/scripts/live-wrap.mjs +632 -0
  554. package/.codex/bundled-skills/impeccable/scripts/live.mjs +247 -0
  555. package/.codex/bundled-skills/impeccable/scripts/load-context.mjs +141 -0
  556. package/.codex/bundled-skills/impeccable/scripts/modern-screenshot.umd.js +14 -0
  557. package/.codex/bundled-skills/impeccable/scripts/pin.mjs +214 -0
  558. package/.codex/references/commands/analyze.md +39 -0
  559. package/.codex/references/commands/architect.md +41 -0
  560. package/.codex/references/commands/deliver.md +29 -0
  561. package/.codex/references/commands/design.md +92 -0
  562. package/.codex/references/commands/help.md +24 -0
  563. package/.codex/references/commands/init.md +40 -0
  564. package/.codex/references/commands/plan.md +41 -0
  565. package/.codex/references/commands/review.md +33 -0
  566. package/.codex/references/commands/status.md +20 -0
  567. package/.codex/role-skills/demand-analysis/SKILL.md +50 -0
  568. package/.codex/role-skills/demand-analysis/templates/handoff-prd.md +39 -0
  569. package/.codex/role-skills/demand-analysis/templates/prd.md +85 -0
  570. package/.codex/role-skills/dev-task-planning/SKILL.md +37 -0
  571. package/.codex/role-skills/dev-task-planning/templates/dev-tasks.md +54 -0
  572. package/.codex/role-skills/quality-review/SKILL.md +49 -0
  573. package/.codex/role-skills/quality-review/templates/review-stage.md +39 -0
  574. package/.codex/role-skills/tech-architecture/SKILL.md +49 -0
  575. package/.codex/role-skills/tech-architecture/templates/handoff-architecture.md +28 -0
  576. package/.codex/role-skills/tech-architecture/templates/tech-architecture.md +54 -0
  577. package/.codex/role-skills/ui-prototype-design/SKILL.md +125 -0
  578. package/.codex/role-skills/ui-prototype-design/templates/handoff-ui.md +40 -0
  579. package/.codex/role-skills/ui-prototype-design/templates/prototype-review.md +57 -0
  580. package/.codex/role-skills/ui-prototype-design/templates/ui-design.md +142 -0
  581. package/.codex/scripts/package_delivery.js +195 -0
  582. package/.codex/scripts/review_stage.js +622 -0
  583. package/.codex/templates/AGENTS.md +44 -0
  584. package/.codex/templates/delivery-README.md +37 -0
  585. package/.codex/templates/framework-AGENTS.md +74 -0
  586. package/.codex/templates/framework-README.md +65 -0
  587. package/.codex/templates/project-config.md +117 -0
  588. package/.codex/templates/prototype-README.md +45 -0
  589. package/.codex/templates/workflow-state.json +47 -0
  590. package/README.md +28 -0
  591. package/bin/pmflow.js +463 -0
  592. package/package.json +30 -0
@@ -0,0 +1,281 @@
1
+ # Design System Inspired by HashiCorp
2
+
3
+ > Category: Backend & Data
4
+ > Infrastructure automation. Enterprise-clean, black and white.
5
+
6
+ ## 1. Visual Theme & Atmosphere
7
+
8
+ HashiCorp's website is enterprise infrastructure made tangible — a design system that must communicate the complexity of cloud infrastructure management while remaining approachable. The visual language splits between two modes: a clean white light-mode for informational sections and a dramatic dark-mode (`#15181e`, `#0d0e12`) for hero areas and product showcases, creating a day/night duality that mirrors the "build in light, deploy in dark" developer workflow.
9
+
10
+ The typography is anchored by a custom brand font (HashiCorp Sans, loaded as `__hashicorpSans_96f0ca`) that carries substantial weight — literally. Headings use 600–700 weights with tight line-heights (1.17–1.19), creating dense, authoritative text blocks that communicate enterprise confidence. The hero headline at 82px weight 600 with OpenType `"kern"` enabled is not decorative — it's infrastructure-grade typography.
11
+
12
+ What distinguishes HashiCorp is its multi-product color system. Each product in the portfolio has its own brand color — Terraform purple (`#7b42bc`), Vault yellow (`#ffcf25`), Waypoint teal (`#14c6cb`), Vagrant blue (`#1868f2`) — and these colors appear throughout as accent tokens via a CSS custom property system (`--mds-color-*`). This creates a design system within a design system: the parent brand is black-and-white with blue accents, while each child product injects its own chromatic identity.
13
+
14
+ The component system uses the `mds` (Markdown Design System) prefix, indicating a systematic, token-driven approach where colors, spacing, and states are all managed through CSS variables. Shadows are remarkably subtle — dual-layer micro-shadows using `rgba(97, 104, 117, 0.05)` that are nearly invisible but provide just enough depth to separate interactive surfaces from the background.
15
+
16
+ **Key Characteristics:**
17
+ - Dual-mode: clean white sections + dramatic dark (`#15181e`) hero/product areas
18
+ - Custom HashiCorp Sans font with 600–700 weights and `"kern"` feature
19
+ - Multi-product color system via `--mds-color-*` CSS custom properties
20
+ - Product brand colors: Terraform purple, Vault yellow, Waypoint teal, Vagrant blue
21
+ - Uppercase letter-spaced captions (13px, weight 600, 1.3px letter-spacing)
22
+ - Micro-shadows: dual-layer at 0.05 opacity — depth through whisper, not shout
23
+ - Token-driven `mds` component system with semantic variable names
24
+ - Tight border radius: 2px–8px, nothing pill-shaped or circular
25
+ - System-ui fallback stack for secondary text
26
+
27
+ ## 2. Color Palette & Roles
28
+
29
+ ### Brand Primary
30
+ - **Black** (`#000000`): Primary brand color, text on light surfaces, `--mds-color-hcp-brand`
31
+ - **Dark Charcoal** (`#15181e`): Dark mode backgrounds, hero sections
32
+ - **Near Black** (`#0d0e12`): Deepest dark mode surface, form inputs on dark
33
+
34
+ ### Neutral Scale
35
+ - **Light Gray** (`#f1f2f3`): Light backgrounds, subtle surfaces
36
+ - **Mid Gray** (`#d5d7db`): Borders, button text on dark
37
+ - **Cool Gray** (`#b2b6bd`): Border accents (at 0.1–0.4 opacity)
38
+ - **Dark Gray** (`#656a76`): Helper text, secondary labels, `--mds-form-helper-text-color`
39
+ - **Charcoal** (`#3b3d45`): Secondary text on light, button borders
40
+ - **Near White** (`#efeff1`): Primary text on dark surfaces
41
+
42
+ ### Product Brand Colors
43
+ - **Terraform Purple** (`#7b42bc`): `--mds-color-terraform-button-background`
44
+ - **Vault Yellow** (`#ffcf25`): `--mds-color-vault-button-background`
45
+ - **Waypoint Teal** (`#14c6cb`): `--mds-color-waypoint-button-background-focus`
46
+ - **Waypoint Teal Hover** (`#12b6bb`): `--mds-color-waypoint-button-background-hover`
47
+ - **Vagrant Blue** (`#1868f2`): `--mds-color-vagrant-brand`
48
+ - **Purple Accent** (`#911ced`): `--mds-color-palette-purple-300`
49
+ - **Visited Purple** (`#a737ff`): `--mds-color-foreground-action-visited`
50
+
51
+ ### Semantic Colors
52
+ - **Action Blue** (`#1060ff`): Primary action links on dark
53
+ - **Link Blue** (`#2264d6`): Primary links on light
54
+ - **Bright Blue** (`#2b89ff`): Active links, hover accent
55
+ - **Amber** (`#bb5a00`): `--mds-color-palette-amber-200`, warning states
56
+ - **Amber Light** (`#fbeabf`): `--mds-color-palette-amber-100`, warning backgrounds
57
+ - **Vault Faint Yellow** (`#fff9cf`): `--mds-color-vault-radar-gradient-faint-stop`
58
+ - **Orange** (`#a9722e`): `--mds-color-unified-core-orange-6`
59
+ - **Red** (`#731e25`): `--mds-color-unified-core-red-7`, error states
60
+ - **Navy** (`#101a59`): `--mds-color-unified-core-blue-7`
61
+
62
+ ### Shadows
63
+ - **Micro Shadow** (`rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2px`): Default card/button elevation
64
+ - **Focus Outline**: `3px solid var(--mds-color-focus-action-external)` — systematic focus ring
65
+
66
+ ## 3. Typography Rules
67
+
68
+ ### Font Families
69
+ - **Primary Brand**: `__hashicorpSans_96f0ca` (HashiCorp Sans), with fallback: `__hashicorpSans_Fallback_96f0ca`
70
+ - **System UI**: `system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial`
71
+
72
+ ### Hierarchy
73
+
74
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
75
+ |------|------|------|--------|-------------|----------------|-------|
76
+ | Display Hero | HashiCorp Sans | 82px (5.13rem) | 600 | 1.17 (tight) | normal | `"kern"` enabled |
77
+ | Section Heading | HashiCorp Sans | 52px (3.25rem) | 600 | 1.19 (tight) | normal | `"kern"` enabled |
78
+ | Feature Heading | HashiCorp Sans | 42px (2.63rem) | 700 | 1.19 (tight) | -0.42px | Negative tracking |
79
+ | Sub-heading | HashiCorp Sans | 34px (2.13rem) | 600–700 | 1.18 (tight) | normal | Feature blocks |
80
+ | Card Title | HashiCorp Sans | 26px (1.63rem) | 700 | 1.19 (tight) | normal | Card and panel headings |
81
+ | Small Title | HashiCorp Sans | 19px (1.19rem) | 700 | 1.21 (tight) | normal | Compact headings |
82
+ | Body Emphasis | HashiCorp Sans | 17px (1.06rem) | 600–700 | 1.18–1.35 | normal | Bold body text |
83
+ | Body Large | system-ui | 20px (1.25rem) | 400–600 | 1.50 | normal | Hero descriptions |
84
+ | Body | system-ui | 16px (1.00rem) | 400–500 | 1.63–1.69 (relaxed) | normal | Standard body text |
85
+ | Nav Link | system-ui | 15px (0.94rem) | 500 | 1.60 (relaxed) | normal | Navigation items |
86
+ | Small Body | system-ui | 14px (0.88rem) | 400–500 | 1.29–1.71 | normal | Secondary content |
87
+ | Caption | system-ui | 13px (0.81rem) | 400–500 | 1.23–1.69 | normal | Metadata, footer links |
88
+ | Uppercase Label | HashiCorp Sans | 13px (0.81rem) | 600 | 1.69 (relaxed) | 1.3px | `text-transform: uppercase` |
89
+
90
+ ### Principles
91
+ - **Brand/System split**: HashiCorp Sans for headings and brand-critical text; system-ui for body, navigation, and functional text. The brand font carries the weight, system-ui carries the words.
92
+ - **Kern always on**: All HashiCorp Sans text enables OpenType `"kern"` — letterfitting is non-negotiable.
93
+ - **Tight headings**: Every heading uses 1.17–1.21 line-height, creating dense, stacked text blocks that feel infrastructural — solid, load-bearing.
94
+ - **Relaxed body**: Body text uses 1.50–1.69 line-height (notably generous), creating comfortable reading rhythm beneath the dense headings.
95
+ - **Uppercase labels as wayfinding**: 13px uppercase with 1.3px letter-spacing serves as the systematic category/section marker — always HashiCorp Sans weight 600.
96
+
97
+ ## 4. Component Stylings
98
+
99
+ ### Buttons
100
+
101
+ **Primary Dark**
102
+ - Background: `#15181e`
103
+ - Text: `#d5d7db`
104
+ - Padding: 9px 9px 9px 15px (asymmetric, more left padding)
105
+ - Radius: 5px
106
+ - Border: `1px solid rgba(178, 182, 189, 0.4)`
107
+ - Shadow: `rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2px`
108
+ - Focus: `3px solid var(--mds-color-focus-action-external)`
109
+ - Hover: uses `--mds-color-surface-interactive` token
110
+
111
+ **Secondary White**
112
+ - Background: `#ffffff`
113
+ - Text: `#3b3d45`
114
+ - Padding: 8px 12px
115
+ - Radius: 4px
116
+ - Hover: `--mds-color-surface-interactive` + low-shadow elevation
117
+ - Focus: `3px solid transparent` outline
118
+ - Clean, minimal appearance
119
+
120
+ **Product-Colored Buttons**
121
+ - Terraform: background `#7b42bc`
122
+ - Vault: background `#ffcf25` (dark text)
123
+ - Waypoint: background `#14c6cb`, hover `#12b6bb`
124
+ - Each product button follows the same structural pattern but uses its brand color
125
+
126
+ ### Badges / Pills
127
+ - Background: `#42225b` (deep purple)
128
+ - Text: `#efeff1`
129
+ - Padding: 3px 7px
130
+ - Radius: 5px
131
+ - Border: `1px solid rgb(180, 87, 255)`
132
+ - Font: 16px
133
+
134
+ ### Inputs
135
+
136
+ **Text Input (Dark Mode)**
137
+ - Background: `#0d0e12`
138
+ - Text: `#efeff1`
139
+ - Border: `1px solid rgb(97, 104, 117)`
140
+ - Padding: 11px
141
+ - Radius: 5px
142
+ - Focus: `3px solid var(--mds-color-focus-action-external)` outline
143
+
144
+ **Checkbox**
145
+ - Background: `#0d0e12`
146
+ - Border: `1px solid rgb(97, 104, 117)`
147
+ - Radius: 3px
148
+
149
+ ### Links
150
+ - **Action Blue on Light**: `#2264d6`, hover → blue-600 variable, underline on hover
151
+ - **Action Blue on Dark**: `#1060ff` or `#2b89ff`, underline on hover
152
+ - **White on Dark**: `#ffffff`, transparent underline → visible underline on hover
153
+ - **Neutral on Light**: `#3b3d45`, transparent underline → visible underline on hover
154
+ - **Light on Dark**: `#efeff1`, similar hover pattern
155
+ - All links use `var(--wpl-blue-600)` as hover color
156
+
157
+ ### Cards & Containers
158
+ - Light mode: white background, micro-shadow elevation
159
+ - Dark mode: `#15181e` or darker surfaces
160
+ - Radius: 8px for cards and containers
161
+ - Product showcase cards with gradient borders or accent lighting
162
+
163
+ ### Navigation
164
+ - Clean horizontal nav with mega-menu dropdowns
165
+ - HashiCorp logo left-aligned
166
+ - system-ui 15px weight 500 for links
167
+ - Product categories organized by lifecycle management group
168
+ - "Get started" and "Contact us" CTAs in header
169
+ - Dark mode variant for hero sections
170
+
171
+ ## 5. Layout Principles
172
+
173
+ ### Spacing System
174
+ - Base unit: 8px
175
+ - Scale: 2px, 3px, 4px, 6px, 7px, 8px, 9px, 11px, 12px, 16px, 20px, 24px, 32px, 40px, 48px
176
+
177
+ ### Grid & Container
178
+ - Max content width: ~1150px (xl breakpoint)
179
+ - Full-width dark hero sections with contained content
180
+ - Card grids: 2–3 column layouts
181
+ - Generous horizontal padding at desktop scale
182
+
183
+ ### Breakpoints
184
+ | Name | Width | Key Changes |
185
+ |------|-------|-------------|
186
+ | Mobile Small | <375px | Tight single column |
187
+ | Mobile | 375–480px | Standard mobile |
188
+ | Small Tablet | 480–600px | Minor adjustments |
189
+ | Tablet | 600–768px | 2-column grids begin |
190
+ | Small Desktop | 768–992px | Full nav visible |
191
+ | Desktop | 992–1120px | Standard layout |
192
+ | Large Desktop | 1120–1440px | Max-width content |
193
+ | Ultra-wide | >1440px | Centered, generous margins |
194
+
195
+ ### Whitespace Philosophy
196
+ - **Enterprise breathing room**: Generous vertical spacing between sections (48px–80px+) communicates stability and seriousness.
197
+ - **Dense headings, spacious body**: Tight line-height headings sit above relaxed body text, creating visual "weight at the top" of each section.
198
+ - **Dark as canvas**: Dark hero sections use extra vertical padding to let 3D illustrations and gradients breathe.
199
+
200
+ ### Border Radius Scale
201
+ - Minimal (2px): Links, small inline elements
202
+ - Subtle (3px): Checkboxes, small inputs
203
+ - Standard (4px): Secondary buttons
204
+ - Comfortable (5px): Primary buttons, badges, inputs
205
+ - Card (8px): Cards, containers, images
206
+
207
+ ## 6. Depth & Elevation
208
+
209
+ | Level | Treatment | Use |
210
+ |-------|-----------|-----|
211
+ | Flat (Level 0) | No shadow | Default surfaces, text blocks |
212
+ | Whisper (Level 1) | `rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2px` | Cards, buttons, interactive surfaces |
213
+ | Focus (Level 2) | `3px solid var(--mds-color-focus-action-external)` outline | Focus rings — color-matched to context |
214
+
215
+ **Shadow Philosophy**: HashiCorp uses arguably the subtlest shadow system in modern web design. The dual-layer shadows at 5% opacity are nearly invisible — they exist not to create visual depth but to signal interactivity. If you can see the shadow, it's too strong. This restraint communicates the enterprise value of stability — nothing floats, nothing is uncertain.
216
+
217
+ ## 7. Do's and Don'ts
218
+
219
+ ### Do
220
+ - Use HashiCorp Sans for headings and brand text, system-ui for body and UI text
221
+ - Enable `"kern"` on all HashiCorp Sans text
222
+ - Use product brand colors ONLY for their respective products (Terraform = purple, Vault = yellow, etc.)
223
+ - Apply uppercase labels at 13px weight 600 with 1.3px letter-spacing for section markers
224
+ - Keep shadows at the "whisper" level (0.05 opacity dual-layer)
225
+ - Use the `--mds-color-*` token system for consistent color application
226
+ - Maintain the tight-heading / relaxed-body rhythm (1.17–1.21 vs 1.50–1.69 line-heights)
227
+ - Use `3px solid` focus outlines for accessibility
228
+
229
+ ### Don't
230
+ - Don't use product brand colors outside their product context (no Terraform purple on Vault content)
231
+ - Don't increase shadow opacity above 0.1 — the whisper level is intentional
232
+ - Don't use pill-shaped buttons (>8px radius) — the sharp, minimal radius is structural
233
+ - Don't skip the `"kern"` feature on headings — the font requires it
234
+ - Don't use HashiCorp Sans for small body text — it's designed for 17px+ heading use
235
+ - Don't mix product colors in the same component — each product has one color
236
+ - Don't use pure black (`#000000`) for dark backgrounds — use `#15181e` or `#0d0e12`
237
+ - Don't forget the asymmetric button padding — 9px 9px 9px 15px is intentional
238
+
239
+ ## 8. Responsive Behavior
240
+
241
+ ### Breakpoints
242
+ | Name | Width | Key Changes |
243
+ |------|-------|-------------|
244
+ | Mobile | <768px | Single column, hamburger nav, stacked CTAs |
245
+ | Tablet | 768–992px | 2-column grids, nav begins expanding |
246
+ | Desktop | 992–1150px | Full layout, mega-menu nav |
247
+ | Large | >1150px | Max-width centered, generous margins |
248
+
249
+ ### Collapsing Strategy
250
+ - Hero: 82px → 52px → 42px heading sizes
251
+ - Navigation: mega-menu → hamburger
252
+ - Product cards: 3-column → 2-column → stacked
253
+ - Dark sections maintain full-width but compress padding
254
+ - Buttons: inline → full-width stacked on mobile
255
+
256
+ ## 9. Agent Prompt Guide
257
+
258
+ ### Quick Color Reference
259
+ - Light bg: `#ffffff`, `#f1f2f3`
260
+ - Dark bg: `#15181e`, `#0d0e12`
261
+ - Text light: `#000000`, `#3b3d45`
262
+ - Text dark: `#efeff1`, `#d5d7db`
263
+ - Links: `#2264d6` (light), `#1060ff` (dark), `#2b89ff` (active)
264
+ - Helper text: `#656a76`
265
+ - Borders: `rgba(178, 182, 189, 0.4)`, `rgb(97, 104, 117)`
266
+ - Focus: `3px solid` product-appropriate color
267
+
268
+ ### Example Component Prompts
269
+ - "Create a hero on dark background (#15181e). Headline at 82px HashiCorp Sans weight 600, line-height 1.17, kern enabled, white text. Sub-text at 20px system-ui weight 400, line-height 1.50, #d5d7db text. Two buttons: primary dark (#15181e, 5px radius, 9px 15px padding) and secondary white (#ffffff, 4px radius, 8px 12px padding)."
270
+ - "Design a product card: white background, 8px radius, dual-layer shadow at rgba(97,104,117,0.05). Title at 26px HashiCorp Sans weight 700, body at 16px system-ui weight 400 line-height 1.63."
271
+ - "Build an uppercase section label: 13px HashiCorp Sans weight 600, line-height 1.69, letter-spacing 1.3px, text-transform uppercase, #656a76 color."
272
+ - "Create a product-specific CTA button: Terraform → #7b42bc background, Vault → #ffcf25 with dark text, Waypoint → #14c6cb. All: 5px radius, 500 weight text, 16px system-ui."
273
+ - "Design a dark form: #0d0e12 input background, #efeff1 text, 1px solid rgb(97,104,117) border, 5px radius, 11px padding. Focus: 3px solid accent-color outline."
274
+
275
+ ### Iteration Guide
276
+ 1. Always start with the mode decision: light (white) for informational, dark (#15181e) for hero/product
277
+ 2. HashiCorp Sans for headings only (17px+), system-ui for everything else
278
+ 3. Shadows are at whisper level (0.05 opacity) — if visible, reduce
279
+ 4. Product colors are sacred — each product owns exactly one color
280
+ 5. Focus rings are always 3px solid, color-matched to product context
281
+ 6. Uppercase labels are the systematic wayfinding pattern — 13px, 600, 1.3px tracking
@@ -0,0 +1,173 @@
1
+ # HUD Design System
2
+
3
+ > Category: Themed & Unique
4
+ > Fighter jet / helicopter head-up display. Phosphor green on near-black, all-caps data overlays, angular geometry. Zero ambiguity at speed and altitude.
5
+
6
+ ## 1. Visual Theme & Atmosphere
7
+
8
+ A **combat pilot's glass cockpit** — everything readable in a split second, in any light condition, under any G-load. The HUD projects critical flight data directly into the pilot's line of sight so they never have to look down. Translucency and glow replace depth and shadow. Every element is functional or it doesn't exist.
9
+
10
+ | Element | Hex | Role |
11
+ |---------|-----|------|
12
+ | Background | `#0A0A0A` | Near-black, primary canvas |
13
+ | Surface | `#111316` | Elevated panels, card backgrounds |
14
+ | Border | `#1E2328` | Subtle panel separation |
15
+ | Primary | `#00FF41` | Active readouts, all data values |
16
+ | Secondary | `#7FFF00` | Standby/dimmed values, inactive fields |
17
+ | Tertiary | `#5A9A5A` | Grid lines, tick marks, reference arcs |
18
+ | Warning | `#FFB800` | Caution, system advisories |
19
+ | Alert | `#FF3B3B` | Critical warnings, fault indicators |
20
+
21
+ *Readings must be unambiguous at 200 knots in Instrument Meteorological Conditions.*
22
+
23
+ ### Use Cases
24
+
25
+ HUD is purpose-built for:
26
+ - **Flight simulation UIs** — combat sims, civil aviation trainers, helicopter hoist operations
27
+ - **Telemetry dashboards** — real-time velocity, altitude, heading overlays
28
+ - **Command-and-control displays** — drone operator screens, ISR stations
29
+ - **Any high-speed, zero-ambiguity data overlay**
30
+
31
+ ### Prior Art
32
+
33
+ F-16 Fighting Falcon HUD, Apache AH-64 attack helicopter integrated display, F-35 helmet-mounted display system, Garmin G1000 flight deck. All share: phosphor green primary, decluttered minimalism, and information hierarchy driven by operational urgency.
34
+
35
+ ## 2. Color Palette & Roles
36
+
37
+ ### Surface Palette
38
+
39
+ | Token | Hex | Usage |
40
+ |-------|-----|-------|
41
+ | Background | `#0A0A0A` | Page canvas, primary depth |
42
+ | Surface | `#111316` | Panels, cards, elevated areas |
43
+ | Border | `#1E2328` | Panel dividers, subtle structure |
44
+
45
+ ### Data Palette
46
+
47
+ | Token | Hex | Usage |
48
+ |-------|-----|-------|
49
+ | Primary | `#00FF41` | Speed, altitude, heading readouts |
50
+ | Secondary | `#7FFF00` | Standby/dimmed values, inactive fields |
51
+ | Tertiary | `#5A9A5A` | Grid lines, tick marks, reference arcs |
52
+ | Warning | `#FFB800` | Caution, system advisories |
53
+ | Alert | `#FF3B3B` | Critical warnings, fault indicators |
54
+
55
+ All data colors on `#0A0A0A` pass WCAG AA (minimum 4.5:1).
56
+
57
+ ### Dark Mode
58
+
59
+ Dark mode is the native and only mode. A HUD is projected in low-light or high-glare cockpit conditions; there is no light mode by design.
60
+
61
+ ```css
62
+ :root {
63
+ --color-bg: #0A0A0A;
64
+ --color-surface: #111316;
65
+ --color-border: #1E2328;
66
+ --data-primary: #00FF41;
67
+ --data-secondary: #7FFF00;
68
+ --data-tertiary: #5A9A5A;
69
+ --data-warning: #FFB800;
70
+ --data-alert: #FF3B3B;
71
+ }
72
+ ```
73
+
74
+ ## 3. Typography Rules
75
+
76
+ | Role | Size | Weight | Line Height | Font |
77
+ |------|------|--------|-------------|------|
78
+ | Display | 32px | 700 | 1.0 | JetBrains Mono |
79
+ | Heading | 12px | 700 | 1.0 | Inter, uppercase |
80
+ | Body | 14px | 400 | 1.2 | JetBrains Mono |
81
+ | Label | 10px | 600 | 1.0 | Inter, uppercase |
82
+ | Micro | 8px | 700 | 1.0 | Inter, uppercase |
83
+
84
+ **Font labels for catalog extraction:**
85
+
86
+ ```
87
+ Display: "JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace
88
+ Body: "JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace
89
+ Heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif
90
+ Label: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif
91
+ Micro: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif
92
+ Mono: "JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace
93
+ ```
94
+
95
+ ## 4. Component Stylings
96
+
97
+ ### Data Readout
98
+
99
+ Displays a single data value with label. Always uses `--data-primary` color.
100
+
101
+ ```css
102
+ .data-readout {
103
+ font-family: 'JetBrains Mono', monospace;
104
+ font-size: 14px;
105
+ font-weight: 700;
106
+ color: var(--data-primary);
107
+ letter-spacing: 0.05em;
108
+ }
109
+ .data-readout-label {
110
+ font-family: 'Inter', sans-serif;
111
+ font-size: 10px;
112
+ font-weight: 600;
113
+ text-transform: uppercase;
114
+ color: var(--data-tertiary);
115
+ letter-spacing: 0.1em;
116
+ }
117
+ ```
118
+
119
+ ### Status Indicator
120
+
121
+ Dot or bar that reflects system state. Colors map to operational states.
122
+
123
+ ```css
124
+ .status-dot {
125
+ width: 8px;
126
+ height: 8px;
127
+ border-radius: 50%;
128
+ background: var(--data-primary); /* active */
129
+ }
130
+ .status-dot.standby { background: var(--data-secondary); }
131
+ .status-dot.warning { background: var(--data-warning); }
132
+ .status-dot.alert { background: var(--data-alert); }
133
+ ```
134
+
135
+ ### Grid Lines
136
+
137
+ Reference marks for spatial orientation. Thin lines in `--data-tertiary`.
138
+
139
+ ## 5. Layout Principles
140
+
141
+ HUDs are overlay systems — they display over a visual field. The layout is absolute-positioned overlays on a transparent or dark background. Information density is high; whitespace is used to separate data clusters, not for aesthetics.
142
+
143
+ Key structural patterns:
144
+ - Grid lines reference the center of the display (crosshair)
145
+ - Data readouts cluster by update frequency (altitude updates slower than airspeed)
146
+ - Warning states override all other information layers
147
+
148
+ ## 6. Depth & Elevation
149
+
150
+ HUD overlays use opacity and glow rather than elevation shadows. Panels are distinguished by border color and subtle surface shifts, not drop shadows. The HUD exists in a single visual plane.
151
+
152
+ ## 7. Do's and Don'ts
153
+
154
+ - Do not use tertiary `#5A9A5A` for body or readout text — only grid lines and reference marks
155
+ - Do not animate elements that do not signal operational state
156
+ - Do not provide a light mode — a HUD only exists in low-light or high-glare conditions
157
+ - Do not use rounded corners greater than 50% (circle reticles only)
158
+ - Do not use gradients — flat color fills only
159
+ - Do not convey information by color alone — reinforce with position and label
160
+
161
+ ## 8. Responsive Behavior
162
+
163
+ HUD overlays are viewport-relative. On smaller viewports, data clusters compress proportionally. Critical readouts (speed, altitude, heading) remain visible at all sizes; secondary indicators hide or minimize. The layout uses a 12-column grid with absolute-positioned data panels anchored to screen edges.
164
+
165
+ ## 9. Agent Prompt Guide
166
+
167
+ When generating a HUD-style interface, prompt the model to:
168
+ - Use JetBrains Mono for all data readouts; Inter (uppercase) for labels only
169
+ - Set `--data-primary` to `#00FF41` for all active readouts
170
+ - Apply 150ms ease-out for state transitions, 100ms linear for data value changes
171
+ - Include a status indicator component with active/standby/warning/alert states
172
+ - Ensure all text passes 4.5:1 contrast on `#0A0A0A`
173
+ - Never add decorative animation or light mode variants
@@ -0,0 +1,149 @@
1
+ # Design System Inspired by Hugging Face
2
+
3
+ > Category: AI & LLM
4
+ > ML community hub. Sunny yellow accent, monospace identity, cheerful and dense.
5
+
6
+ ## 1. Visual Theme & Atmosphere
7
+
8
+ Hugging Face is the rare ML brand that refuses to look serious. The hub leans into a sunshine-yellow accent (`#ffd21e`), a cartoon hugging-face emoji as the logo, and a confident **IBM Plex Mono** voice that reads more like a community zine than a research lab. The page background is a clean off-white (`#fafafa`) with text in a deep slate (`#0d1117`), and the yellow appears in pull quotes, tags, "new" badges, and the model-card header strip — never as an entire surface, always as punctuation.
9
+
10
+ The typographic system is monospace-forward in a way few product brands attempt: **IBM Plex Mono** for headings and tags, **Source Sans Pro** (or Inter) for body. The mix gives every page a "config file is the README" vibe — fitting for a platform built around `.gitattributes` and `model-card.md`.
11
+
12
+ Shapes are crisp, not soft: 4–6px radii, 1px solid borders that announce themselves rather than hide. Tables are dense, with row hover in a faint gray (`#f3f4f6`). The brand emoji punctuates everything — chips, headings, even error states wear a 🤗 — so the system feels human even when displaying technical data.
13
+
14
+ **Key Characteristics:**
15
+ - Sunshine yellow `#ffd21e` as the lone saturated accent
16
+ - IBM Plex Mono for headings and tags; Source Sans Pro for body
17
+ - Off-white canvas (`#fafafa`) with crisp 1px borders (`#e5e7eb`)
18
+ - 4–6px radii — closer to brutalist than rounded
19
+ - Hugging-face emoji 🤗 used unironically as a system glyph
20
+ - Dense tables, minimal padding — a community hub for power users
21
+ - Color-coded model categories (NLP blue, vision green, audio purple)
22
+
23
+ ## 2. Color Palette & Roles
24
+
25
+ ### Primary
26
+ - **HF Yellow** (`#ffd21e`): Brand primary, badges, "new" pill, model-card header bar.
27
+ - **HF Yellow Deep** (`#f59e0b`): Hover/active for yellow.
28
+ - **HF Yellow Soft** (`#fff4cc`): Surface tint, callout background.
29
+
30
+ ### Surface & Background
31
+ - **Canvas** (`#ffffff`): Primary page background.
32
+ - **Canvas Subtle** (`#fafafa`): Alternate section background, footer.
33
+ - **Canvas Inset** (`#f3f4f6`): Code block background, hover row.
34
+ - **Canvas Dark** (`#0d1117`): Dark theme background.
35
+
36
+ ### Ink & Text
37
+ - **Ink Primary** (`#0d1117`): Primary text, headings.
38
+ - **Ink Secondary** (`#374151`): Body prose.
39
+ - **Ink Muted** (`#6b7280`): Captions, file paths, model authors.
40
+ - **Ink Inverse** (`#f9fafb`): Text on dark surface.
41
+
42
+ ### Category Accents (Model Tasks)
43
+ - **NLP Blue** (`#2563eb`): Text/NLP task badges.
44
+ - **Vision Green** (`#16a34a`): Computer-vision task badges.
45
+ - **Audio Purple** (`#9333ea`): Audio/speech task badges.
46
+ - **Multimodal Pink** (`#db2777`): Multimodal/diffusion task badges.
47
+ - **Tabular Orange** (`#ea580c`): Tabular/structured task badges.
48
+
49
+ ### Semantic
50
+ - **Success** (`#16a34a`): Build succeeded, deploy live.
51
+ - **Warning** (`#f59e0b`): Slow inference, rate limit.
52
+ - **Error** (`#dc2626`): Failed build, broken model.
53
+ - **Info** (`#2563eb`): Notice banner.
54
+
55
+ ### Border
56
+ - **Border Default** (`#e5e7eb`): Standard 1px hairline.
57
+ - **Border Strong** (`#d1d5db`): Emphasized border on hover.
58
+ - **Border Subtle** (`#f3f4f6`): Inner divider.
59
+
60
+ ## 3. Typography Rules
61
+
62
+ ### Font Family
63
+ - **Display / UI / Headings / Tags**: `IBM Plex Mono`, with fallback: `ui-monospace, SFMono-Regular, Menlo, Consolas, monospace`
64
+ - **Body / Prose**: `Source Sans Pro`, with fallback: `Inter, system-ui, -apple-system, sans-serif`
65
+ - **Editorial (rare, blog only)**: `Source Serif Pro`, with fallback: `Georgia, serif`
66
+
67
+ ### Hierarchy
68
+
69
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
70
+ |------|------|------|--------|-------------|----------------|-------|
71
+ | Display | IBM Plex Mono | 48px (3rem) | 600 | 1.1 | -0.01em | Marketing hero |
72
+ | H1 | IBM Plex Mono | 32px (2rem) | 600 | 1.2 | normal | Page heading, model name |
73
+ | H2 | IBM Plex Mono | 24px (1.5rem) | 600 | 1.25 | normal | Section heading |
74
+ | H3 | IBM Plex Mono | 18px (1.125rem) | 600 | 1.3 | normal | Sub-section |
75
+ | Body Large | Source Sans Pro | 18px (1.125rem) | 400 | 1.6 | normal | Lede, blog intro |
76
+ | Body | Source Sans Pro | 15px (0.9375rem) | 400 | 1.55 | normal | Standard prose, model card |
77
+ | Caption | Source Sans Pro | 13px (0.8125rem) | 500 | 1.4 | 0.01em | Author byline, timestamp |
78
+ | Tag / Badge | IBM Plex Mono | 12px (0.75rem) | 500 | 1.2 | 0.02em | Task tags, framework chips |
79
+ | Code | IBM Plex Mono | 14px (0.875rem) | 400 | 1.55 | normal | Code blocks, inline `model_id` |
80
+
81
+ ### Principles
82
+ - **Mono everywhere it matters**: nav links, headings, tags, and metadata are all monospaced. Sans is reserved for paragraphs of prose.
83
+ - **Weight under 600**: 600 is the cap; 700 is too loud against yellow. Hierarchy is size and color.
84
+ - **Tags read as code**: model tags use mono so they look like the strings developers will paste into Python.
85
+
86
+ ## 4. Component Stylings
87
+
88
+ ### Buttons
89
+
90
+ **Primary**
91
+ - Background: `#0d1117`
92
+ - Text: `#ffffff`
93
+ - Padding: 8px 16px
94
+ - Radius: 6px
95
+ - Hover: `#374151`
96
+ - Use: "Use this model", primary forms.
97
+
98
+ **Yellow CTA**
99
+ - Background: `#ffd21e`
100
+ - Text: `#0d1117`
101
+ - Padding: 8px 16px
102
+ - Radius: 6px
103
+ - Hover: `#f59e0b`
104
+ - Use: "Pro upgrade", "Sponsor".
105
+
106
+ **Outline**
107
+ - Background: `#ffffff`
108
+ - Text: `#0d1117`
109
+ - Border: 1px solid `#e5e7eb`
110
+ - Hover: background `#f3f4f6`
111
+
112
+ ### Cards / Model Cards
113
+ - Background: `#ffffff`
114
+ - Border: 1px solid `#e5e7eb`
115
+ - Radius: 6px
116
+ - Padding: 16px 20px
117
+ - Header strip: `#ffd21e` background, 4px tall, only on featured model cards.
118
+
119
+ ### Inputs
120
+ - Background: `#ffffff`
121
+ - Border: 1px solid `#e5e7eb`
122
+ - Radius: 6px
123
+ - Padding: 8px 12px
124
+ - Focus: border `#0d1117`, ring `0 0 0 3px rgba(13,17,23,0.1)`
125
+
126
+ ### Tags / Chips (Task / Framework)
127
+ - Background: category-tinted soft (`#dbeafe` for NLP, `#dcfce7` for vision, etc.)
128
+ - Text: matching strong category color.
129
+ - Padding: 2px 8px
130
+ - Radius: 4px
131
+ - Font: IBM Plex Mono 12px / 500
132
+
133
+ ### Tables
134
+ - Header: background `#fafafa`, border-bottom 1px `#e5e7eb`.
135
+ - Row: border-bottom 1px `#f3f4f6`, hover `#f3f4f6`.
136
+ - Padding: 8px 16px per cell — dense by design.
137
+
138
+ ## 5. Spacing & Layout
139
+
140
+ - **Base unit**: 4px. Scale: 4, 8, 12, 16, 24, 32, 48, 64.
141
+ - **Container**: max 1280px, 24px gutter.
142
+ - **Sidebar (model browser)**: 280px wide.
143
+ - **Section rhythm**: 64–96px vertical between major sections.
144
+
145
+ ## 6. Motion
146
+
147
+ - **Duration**: 120ms for hover; 200ms for menu open.
148
+ - **Easing**: `ease-out`.
149
+ - **Tag pop**: a 1.05× scale on hover at 120ms — the only exception to flat-on-hover.
@@ -0,0 +1,11 @@
1
+ <!doctype html><html lang="zh-CN"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Hugging Face Theme Examples</title><style>
2
+ :root{--bg:#fff8df;--panel:#fff;--text:#1f2937;--sub:#6b7280;--line:#eadfbd;--yellow:#ffcc4d;--blue:#2563eb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 Inter,system-ui,sans-serif}.switch{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;gap:16px;padding:12px 18px;background:rgba(255,248,223,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.switch span{display:block;color:var(--sub);font-size:12px}.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.tab{border:1px solid var(--line);background:white;border-radius:999px;min-height:34px;padding:0 12px;cursor:pointer}.tab.active{background:var(--yellow);color:#111827}.page{display:none;min-height:calc(100vh - 59px)}.page.active{display:block}h1,h2,p{margin:0}h1{font-size:52px;line-height:1.06;letter-spacing:-.04em}h2{font-size:22px}.btn{border:0;background:#111827;color:white;border-radius:999px;min-height:40px;padding:0 18px;font-weight:800}.header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 min(48px,5vw);background:white;border-bottom:1px solid var(--line)}.container{width:min(1160px,calc(100vw - 40px));margin:0 auto;padding:50px 0 80px;display:grid;gap:28px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}.model{background:white;border:1px solid var(--line);border-radius:22px;padding:20px;min-height:360px;display:grid;gap:12px}.pill{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#fff}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:20px;min-height:148px}.admin{display:grid;grid-template-columns:230px 1fr}.side{background:white;border-right:1px solid var(--line);padding:18px}.side a{display:block;color:var(--sub);padding:10px 0}.work{padding:24px;display:grid;gap:18px}.metric{font-size:40px}.phone-wrap{display:grid;place-items:center;min-height:calc(100vh - 59px)}.phone{width:330px;min-height:640px;background:white;border:1px solid var(--line);border-radius:34px;padding:18px;display:grid;gap:14px;align-content:start}@media(max-width:900px){.switch{flex-direction:column}.tabs{justify-content:flex-start}.hero,.grid,.admin{grid-template-columns:1fr}.side{display:none}h1{font-size:36px}}
3
+ </style></head><body><aside class="switch"><div><strong>Hugging Face 主题预览</strong><span>AI 社区、模型库、温暖黄色</span></div><div class="tabs"><button class="tab active" data-target="developer">开发者工具/文档页</button><button class="tab" data-target="saas">SaaS 产品页</button><button class="tab" data-target="admin">后台管理系统</button><button class="tab" data-target="dashboard">数据分析看板</button><button class="tab" data-target="brand">品牌主页</button><button class="tab" data-target="mobile">移动/消费产品</button><button class="tab" data-target="editorial">内容/编辑型页面</button></div></aside>
4
+ <section class="page active" data-sample="developer"><header class="header"><strong>ModelHub</strong><button class="btn">Upload model</button></header><main class="container"><section class="hero"><div><h1>Share models, datasets and demos.</h1><p style="margin-top:16px;color:var(--sub)">适合 AI 社区、模型库、评测平台和演示空间。</p></div><div class="model"><h2>open-model/text-ranker</h2><span class="pill">transformers</span><span class="pill">downloads 2.4M</span><span class="pill">license apache-2.0</span></div></section></main></section>
5
+ <section class="page" data-sample="saas"><main class="container"><h1>AI 平台 SaaS</h1><section class="grid"><article class="card"><h2>Models</h2><p>模型托管。</p></article><article class="card"><h2>Datasets</h2><p>数据集管理。</p></article><article class="card"><h2>Spaces</h2><p>Demo 应用。</p></article></section></main></section>
6
+ <section class="page" data-sample="admin"><div class="admin"><aside class="side"><strong>Org</strong><a>Models</a><a>Members</a><a>Billing</a></aside><main class="work"><h1>AI 组织后台</h1><section class="grid"><article class="card"><h2>Models</h2><div class="metric">248</div></article><article class="card"><h2>Datasets</h2><div class="metric">86</div></article><article class="card"><h2>Runs</h2><div class="metric">18k</div></article></section></main></div></section>
7
+ <section class="page" data-sample="dashboard"><main class="container"><h1>模型下载看板</h1><section class="grid"><article class="card"><h2>Downloads</h2><div class="metric">8.2M</div></article><article class="card"><h2>Likes</h2><div class="metric">42k</div></article><article class="card"><h2>Spaces</h2><div class="metric">318</div></article></section></main></section>
8
+ <section class="page" data-sample="brand"><main class="container"><h1>Friendly AI community surface.</h1><section class="grid"><article class="card"><h2>Open</h2><p>社区共享。</p></article><article class="card"><h2>Playable</h2><p>Demo 优先。</p></article><article class="card"><h2>Warm</h2><p>不冷冰冰。</p></article></section></main></section>
9
+ <section class="page" data-sample="mobile"><main class="phone-wrap"><div class="phone"><h2>模型浏览</h2><article class="card"><h2>推荐模型</h2><p>text-ranker</p></article><button class="btn">试用</button></div></main></section>
10
+ <section class="page" data-sample="editorial"><main class="container"><h1>AI 社区文章</h1><section class="grid"><article class="card"><h2>模型卡</h2><p>说明与限制。</p></article><article class="card"><h2>Benchmark</h2><p>评测结果。</p></article><article class="card"><h2>Tutorial</h2><p>使用教程。</p></article></section></main></section>
11
+ <script>document.querySelectorAll('.tab').forEach(t=>t.addEventListener('click',()=>{document.querySelectorAll('.tab').forEach(x=>x.classList.toggle('active',x===t));document.querySelectorAll('.page').forEach(p=>p.classList.toggle('active',p.dataset.sample===t.dataset.target));}));</script></body></html>