@nurix/etna 0.19.10 → 0.19.12

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 (491) hide show
  1. package/data/harness-index.json +1 -1
  2. package/data/harnesses/code/harness.json +1 -1
  3. package/data/harnesses/code/rules/frontend.md +5 -5
  4. package/data/harnesses/code/skills/design/SKILL.md +70 -50
  5. package/data/harnesses/code/skills/design/components/charts.md +76 -0
  6. package/data/harnesses/code/skills/design/components/collections.md +132 -0
  7. package/data/harnesses/code/skills/design/components/feedback.md +47 -0
  8. package/data/harnesses/code/skills/design/components/hooks.md +35 -0
  9. package/data/harnesses/code/skills/design/components/index.md +143 -0
  10. package/data/harnesses/code/skills/design/components/inputs.md +327 -0
  11. package/data/harnesses/code/skills/design/components/layout.md +52 -0
  12. package/data/harnesses/code/skills/design/components/media.md +66 -0
  13. package/data/harnesses/code/skills/design/components/motion.md +82 -0
  14. package/data/harnesses/code/skills/design/components/navigation.md +29 -0
  15. package/data/harnesses/code/skills/design/components/overlays.md +72 -0
  16. package/data/harnesses/code/skills/design/components/setup.md +40 -0
  17. package/data/harnesses/code/skills/design/components/typography.md +46 -0
  18. package/data/harnesses/code/skills/design/components/utils.md +37 -0
  19. package/data/harnesses/code/skills/design/data/blueprints/browse.md +38 -0
  20. package/data/harnesses/code/skills/design/data/blueprints/creation-flow.md +38 -0
  21. package/data/harnesses/code/skills/design/data/blueprints/dashboard.md +38 -0
  22. package/data/harnesses/code/skills/design/data/blueprints/grid.md +38 -0
  23. package/data/harnesses/code/skills/design/data/blueprints/queue.md +38 -0
  24. package/data/harnesses/code/skills/design/data/blueprints/record-detail.md +38 -0
  25. package/data/harnesses/code/skills/design/data/blueprints/settings.md +38 -0
  26. package/data/harnesses/code/skills/design/data/chart-styling/Readme.md +33 -0
  27. package/data/harnesses/code/skills/design/data/chart-styling/carbon-accessible-alert-semantic.md +19 -0
  28. package/data/harnesses/code/skills/design/data/chart-styling/carbon-monochrome-sequential-trend.md +19 -0
  29. package/data/harnesses/code/skills/design/data/chart-styling/datadog-classic-six-aligned.md +19 -0
  30. package/data/harnesses/code/skills/design/data/chart-styling/datawrapper-tiered-gray-hierarchy.md +19 -0
  31. package/data/harnesses/code/skills/design/data/chart-styling/econ-red-rule-horizontal.md +19 -0
  32. package/data/harnesses/code/skills/design/data/chart-styling/financial-diverging-threshold-overlay.md +19 -0
  33. package/data/harnesses/code/skills/design/data/chart-styling/ft-vocabulary-ranked-muted.md +19 -0
  34. package/data/harnesses/code/skills/design/data/chart-styling/grafana-dark-threshold-bands.md +19 -0
  35. package/data/harnesses/code/skills/design/data/chart-styling/material-rounded-explicit-label.md +19 -0
  36. package/data/harnesses/code/skills/design/data/chart-styling/nyt-ghost-grid-direct-label.md +19 -0
  37. package/data/harnesses/code/skills/design/data/chart-styling/plot-currentcolor-inherit.md +19 -0
  38. package/data/harnesses/code/skills/design/data/chart-styling/saas-gradient-glow-area.md +19 -0
  39. package/data/harnesses/code/skills/design/data/chart-styling/shadcn-composable-css-vars.md +19 -0
  40. package/data/harnesses/code/skills/design/data/charts/census.csv +58 -0
  41. package/data/harnesses/code/skills/design/data/checklists/browse.md +21 -0
  42. package/data/harnesses/code/skills/design/data/checklists/creation-flow.md +20 -0
  43. package/data/harnesses/code/skills/design/data/checklists/dashboard.md +21 -0
  44. package/data/harnesses/code/skills/design/data/checklists/grid.md +21 -0
  45. package/data/harnesses/code/skills/design/data/checklists/queue.md +21 -0
  46. package/data/harnesses/code/skills/design/data/checklists/record-detail.md +21 -0
  47. package/data/harnesses/code/skills/design/data/checklists/settings.md +21 -0
  48. package/data/harnesses/code/skills/design/data/chrome/board-column.md +68 -0
  49. package/data/harnesses/code/skills/design/data/chrome/data-table.md +63 -0
  50. package/data/harnesses/code/skills/design/data/chrome/side-panel.md +60 -0
  51. package/data/harnesses/code/skills/design/data/chrome/sidebar.md +78 -0
  52. package/data/harnesses/code/skills/design/data/chrome/stat-cards.md +62 -0
  53. package/data/harnesses/code/skills/design/data/chrome/topbar.md +65 -0
  54. package/data/harnesses/code/skills/design/data/color/accent-presets.md +90 -0
  55. package/data/harnesses/code/skills/design/data/color/aesop-earth-mute.md +91 -0
  56. package/data/harnesses/code/skills/design/data/color/arc-peach-play.md +90 -0
  57. package/data/harnesses/code/skills/design/data/color/attio-hunter-teal.md +90 -0
  58. package/data/harnesses/code/skills/design/data/color/carbon-cyan-signal.md +90 -0
  59. package/data/harnesses/code/skills/design/data/color/clay-parchment.md +90 -0
  60. package/data/harnesses/code/skills/design/data/color/duolingo-feather.md +90 -0
  61. package/data/harnesses/code/skills/design/data/color/geist-mono-signal.md +90 -0
  62. package/data/harnesses/code/skills/design/data/color/linear-graphite-violet.md +90 -0
  63. package/data/harnesses/code/skills/design/data/color/mercury-onyx-cobalt.md +90 -0
  64. package/data/harnesses/code/skills/design/data/color/notion-paper-ink.md +90 -0
  65. package/data/harnesses/code/skills/design/data/color/radix-slate-iris.md +90 -0
  66. package/data/harnesses/code/skills/design/data/color/raycast-void-spectrum.md +90 -0
  67. package/data/harnesses/code/skills/design/data/color/spectrum-celery-fuchsia.md +90 -0
  68. package/data/harnesses/code/skills/design/data/color/stripe-blurple-ruby.md +90 -0
  69. package/data/harnesses/code/skills/design/data/color/superhuman-cod-picton.md +89 -0
  70. package/data/harnesses/code/skills/design/data/corpora/operations-review/companies.csv +15 -0
  71. package/data/harnesses/code/skills/design/data/corpora/operations-review/corpus.md +87 -0
  72. package/data/harnesses/code/skills/design/data/corpora/operations-review/people.csv +25 -0
  73. package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/companies.csv +15 -0
  74. package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/corpus.md +83 -0
  75. package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/people.csv +25 -0
  76. package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/companies.csv +15 -0
  77. package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/corpus.md +89 -0
  78. package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/people.csv +25 -0
  79. package/data/harnesses/code/skills/design/data/elevation/ant-design-directional-shadow.md +19 -0
  80. package/data/harnesses/code/skills/design/data/elevation/apple-liquid-glass-material.md +18 -0
  81. package/data/harnesses/code/skills/design/data/elevation/atlassian-surface-shadow-pairing.md +20 -0
  82. package/data/harnesses/code/skills/design/data/elevation/fluent-2-key-ambient-ramp.md +20 -0
  83. package/data/harnesses/code/skills/design/data/elevation/github-primer-sparing-shadow.md +19 -0
  84. package/data/harnesses/code/skills/design/data/elevation/ibm-carbon-layer-and-border.md +19 -0
  85. package/data/harnesses/code/skills/design/data/elevation/linear-dark-surface-ladder.md +17 -0
  86. package/data/harnesses/code/skills/design/data/elevation/material-2-key-ambient-dp-ramp.md +19 -0
  87. package/data/harnesses/code/skills/design/data/elevation/material-3-tonal-elevation.md +21 -0
  88. package/data/harnesses/code/skills/design/data/elevation/neobrutalist-hard-offset.md +19 -0
  89. package/data/harnesses/code/skills/design/data/elevation/neumorphic-soft-dual-shadow.md +18 -0
  90. package/data/harnesses/code/skills/design/data/elevation/notion-warm-minimal-hairline.md +17 -0
  91. package/data/harnesses/code/skills/design/data/elevation/polaris-elevation-inset-bevel.md +21 -0
  92. package/data/harnesses/code/skills/design/data/elevation/radix-themes-alpha-ring-scale.md +19 -0
  93. package/data/harnesses/code/skills/design/data/elevation/shadcn-neutral-derived-radius.md +19 -0
  94. package/data/harnesses/code/skills/design/data/elevation/stripe-brand-tinted-dual-shadow.md +18 -0
  95. package/data/harnesses/code/skills/design/data/elevation/tailwind-default-utility-scale.md +19 -0
  96. package/data/harnesses/code/skills/design/data/elevation/vercel-geist-shadow-as-border.md +20 -0
  97. package/data/harnesses/code/skills/design/data/gradients/amber-attention-fill.md +16 -0
  98. package/data/harnesses/code/skills/design/data/gradients/cloud-shadow-wash.md +16 -0
  99. package/data/harnesses/code/skills/design/data/gradients/confident-lavender-wash.md +16 -0
  100. package/data/harnesses/code/skills/design/data/gradients/ember-ship-flare.md +18 -0
  101. package/data/harnesses/code/skills/design/data/gradients/full-metal-wash.md +16 -0
  102. package/data/harnesses/code/skills/design/data/gradients/indigo-ruby-cta-band.md +18 -0
  103. package/data/harnesses/code/skills/design/data/gradients/linear-graphite-wash.md +18 -0
  104. package/data/harnesses/code/skills/design/data/gradients/marble-quartz-wash.md +16 -0
  105. package/data/harnesses/code/skills/design/data/gradients/midnight-aurora-panel.md +16 -0
  106. package/data/harnesses/code/skills/design/data/gradients/neutral-volume-fill.md +16 -0
  107. package/data/harnesses/code/skills/design/data/gradients/revenue-uptrend-fill.md +16 -0
  108. package/data/harnesses/code/skills/design/data/gradients/risk-decline-fill.md +16 -0
  109. package/data/harnesses/code/skills/design/data/gradients/signal-blue-develop.md +18 -0
  110. package/data/harnesses/code/skills/design/data/gradients/slate-mist-wash.md +16 -0
  111. package/data/harnesses/code/skills/design/data/gradients/stripe-atmosphere-mesh.md +18 -0
  112. package/data/harnesses/code/skills/design/data/gradients/teal-signal-accent.md +16 -0
  113. package/data/harnesses/code/skills/design/data/gradients/violet-magenta-promo.md +16 -0
  114. package/data/harnesses/code/skills/design/data/iconography.md +199 -0
  115. package/data/harnesses/code/skills/design/data/motion/accordion-expand.md +18 -0
  116. package/data/harnesses/code/skills/design/data/motion/destructive-hold-confirm.md +18 -0
  117. package/data/harnesses/code/skills/design/data/motion/drag-dismiss-momentum.md +18 -0
  118. package/data/harnesses/code/skills/design/data/motion/empty-state-arrive.md +18 -0
  119. package/data/harnesses/code/skills/design/data/motion/hover-lift.md +18 -0
  120. package/data/harnesses/code/skills/design/data/motion/modal-center-arrive.md +18 -0
  121. package/data/harnesses/code/skills/design/data/motion/number-ticker-roll.md +18 -0
  122. package/data/harnesses/code/skills/design/data/motion/onboarding-bounce.md +18 -0
  123. package/data/harnesses/code/skills/design/data/motion/panel-slide.md +18 -0
  124. package/data/harnesses/code/skills/design/data/motion/press-feedback.md +18 -0
  125. package/data/harnesses/code/skills/design/data/motion/progress-linear-loop.md +18 -0
  126. package/data/harnesses/code/skills/design/data/motion/route-crossfade.md +18 -0
  127. package/data/harnesses/code/skills/design/data/motion/rubber-band-overscroll.md +18 -0
  128. package/data/harnesses/code/skills/design/data/motion/skeleton-shimmer.md +18 -0
  129. package/data/harnesses/code/skills/design/data/motion/stagger-arrive.md +18 -0
  130. package/data/harnesses/code/skills/design/data/motion/toast-enter-stack.md +18 -0
  131. package/data/harnesses/code/skills/design/data/motion/tooltip-chain-instant.md +18 -0
  132. package/data/harnesses/code/skills/design/data/motion/trigger-anchored-reveal.md +18 -0
  133. package/data/harnesses/code/skills/design/data/tells.csv +34 -0
  134. package/data/harnesses/code/skills/design/data/typography/anton-work-sans.md +17 -0
  135. package/data/harnesses/code/skills/design/data/typography/archivo-black-archivo.md +17 -0
  136. package/data/harnesses/code/skills/design/data/typography/bitter-karla.md +17 -0
  137. package/data/harnesses/code/skills/design/data/typography/dm-serif-dm-sans.md +17 -0
  138. package/data/harnesses/code/skills/design/data/typography/fraunces-inter.md +17 -0
  139. package/data/harnesses/code/skills/design/data/typography/geist-geist-mono.md +17 -0
  140. package/data/harnesses/code/skills/design/data/typography/hubot-sans-mona-sans.md +17 -0
  141. package/data/harnesses/code/skills/design/data/typography/ibm-plex-sans-operator-single-family.md +17 -0
  142. package/data/harnesses/code/skills/design/data/typography/instrument-serif-instrument-sans.md +17 -0
  143. package/data/harnesses/code/skills/design/data/typography/inter-operator-single-family.md +17 -0
  144. package/data/harnesses/code/skills/design/data/typography/libre-baskerville-libre-franklin.md +17 -0
  145. package/data/harnesses/code/skills/design/data/typography/newsreader-inter.md +17 -0
  146. package/data/harnesses/code/skills/design/data/typography/playfair-display-source-sans.md +17 -0
  147. package/data/harnesses/code/skills/design/data/typography/public-sans-operator-single-family.md +17 -0
  148. package/data/harnesses/code/skills/design/data/typography/sohne-inter-fintech.md +17 -0
  149. package/data/harnesses/code/skills/design/data/typography/source-serif-source-sans.md +17 -0
  150. package/data/harnesses/code/skills/design/data/typography/space-grotesk-work-sans-space-mono.md +17 -0
  151. package/data/harnesses/code/skills/design/data/typography/spectral-manrope.md +17 -0
  152. package/data/harnesses/code/skills/design/data/voices/bright-collaborator.md +29 -0
  153. package/data/harnesses/code/skills/design/data/voices/direct-operator.md +29 -0
  154. package/data/harnesses/code/skills/design/data/voices/earnest-helper.md +29 -0
  155. package/data/harnesses/code/skills/design/data/voices/editorial-composed.md +29 -0
  156. package/data/harnesses/code/skills/design/data/voices/quiet-concierge.md +29 -0
  157. package/data/harnesses/code/skills/design/data/voices/warm-guide.md +29 -0
  158. package/data/harnesses/code/skills/design/design-md/SCHEMA.md +179 -0
  159. package/data/harnesses/code/skills/design/design-md/index.csv +67 -0
  160. package/data/harnesses/code/skills/design/design-md/library/airbnb.md +207 -0
  161. package/data/harnesses/code/skills/design/design-md/library/airtable.md +205 -0
  162. package/data/harnesses/code/skills/design/design-md/library/anthropic-claude.md +203 -0
  163. package/data/harnesses/code/skills/design/design-md/library/apple.md +206 -0
  164. package/data/harnesses/code/skills/design/design-md/library/binance.md +210 -0
  165. package/data/harnesses/code/skills/design/design-md/library/bmw.md +210 -0
  166. package/data/harnesses/code/skills/design/design-md/library/cal.md +209 -0
  167. package/data/harnesses/code/skills/design/design-md/library/clay.md +204 -0
  168. package/data/harnesses/code/skills/design/design-md/library/clickhouse.md +205 -0
  169. package/data/harnesses/code/skills/design/design-md/library/cohere.md +205 -0
  170. package/data/harnesses/code/skills/design/design-md/library/coinbase.md +198 -0
  171. package/data/harnesses/code/skills/design/design-md/library/composio.md +198 -0
  172. package/data/harnesses/code/skills/design/design-md/library/cursor.md +197 -0
  173. package/data/harnesses/code/skills/design/design-md/library/elevenlabs.md +199 -0
  174. package/data/harnesses/code/skills/design/design-md/library/expo.md +200 -0
  175. package/data/harnesses/code/skills/design/design-md/library/figma.md +199 -0
  176. package/data/harnesses/code/skills/design/design-md/library/framer.md +202 -0
  177. package/data/harnesses/code/skills/design/design-md/library/hashicorp.md +205 -0
  178. package/data/harnesses/code/skills/design/design-md/library/ibm.md +205 -0
  179. package/data/harnesses/code/skills/design/design-md/library/intercom.md +204 -0
  180. package/data/harnesses/code/skills/design/design-md/library/kraken.md +200 -0
  181. package/data/harnesses/code/skills/design/design-md/library/linear-app.md +198 -0
  182. package/data/harnesses/code/skills/design/design-md/library/lovable.md +199 -0
  183. package/data/harnesses/code/skills/design/design-md/library/meta.md +204 -0
  184. package/data/harnesses/code/skills/design/design-md/library/minimax.md +204 -0
  185. package/data/harnesses/code/skills/design/design-md/library/mintlify.md +210 -0
  186. package/data/harnesses/code/skills/design/design-md/library/miro.md +209 -0
  187. package/data/harnesses/code/skills/design/design-md/library/mistral-ai.md +201 -0
  188. package/data/harnesses/code/skills/design/design-md/library/mongodb.md +201 -0
  189. package/data/harnesses/code/skills/design/design-md/library/notion.md +204 -0
  190. package/data/harnesses/code/skills/design/design-md/library/nvidia.md +215 -0
  191. package/data/harnesses/code/skills/design/design-md/library/ollama.md +213 -0
  192. package/data/harnesses/code/skills/design/design-md/library/opencode-ai.md +216 -0
  193. package/data/harnesses/code/skills/design/design-md/library/posthog.md +218 -0
  194. package/data/harnesses/code/skills/design/design-md/library/raycast.md +214 -0
  195. package/data/harnesses/code/skills/design/design-md/library/replicate.md +202 -0
  196. package/data/harnesses/code/skills/design/design-md/library/resend.md +203 -0
  197. package/data/harnesses/code/skills/design/design-md/library/revolut.md +203 -0
  198. package/data/harnesses/code/skills/design/design-md/library/runwayml.md +203 -0
  199. package/data/harnesses/code/skills/design/design-md/library/sanity.md +200 -0
  200. package/data/harnesses/code/skills/design/design-md/library/sentry.md +201 -0
  201. package/data/harnesses/code/skills/design/design-md/library/shopify.md +202 -0
  202. package/data/harnesses/code/skills/design/design-md/library/slack.md +202 -0
  203. package/data/harnesses/code/skills/design/design-md/library/spacex.md +206 -0
  204. package/data/harnesses/code/skills/design/design-md/library/spotify.md +206 -0
  205. package/data/harnesses/code/skills/design/design-md/library/stripe.md +196 -0
  206. package/data/harnesses/code/skills/design/design-md/library/supabase.md +196 -0
  207. package/data/harnesses/code/skills/design/design-md/library/superhuman.md +194 -0
  208. package/data/harnesses/code/skills/design/design-md/library/tesla.md +198 -0
  209. package/data/harnesses/code/skills/design/design-md/library/theverge.md +199 -0
  210. package/data/harnesses/code/skills/design/design-md/library/together-ai.md +193 -0
  211. package/data/harnesses/code/skills/design/design-md/library/uber.md +195 -0
  212. package/data/harnesses/code/skills/design/design-md/library/vercel.md +195 -0
  213. package/data/harnesses/code/skills/design/design-md/library/voltagent.md +197 -0
  214. package/data/harnesses/code/skills/design/design-md/library/warp.md +196 -0
  215. package/data/harnesses/code/skills/design/design-md/library/webflow.md +197 -0
  216. package/data/harnesses/code/skills/design/design-md/library/wired.md +197 -0
  217. package/data/harnesses/code/skills/design/design-md/library/wise.md +198 -0
  218. package/data/harnesses/code/skills/design/design-md/library/x-ai.md +199 -0
  219. package/data/harnesses/code/skills/design/design-md/library/zapier.md +198 -0
  220. package/data/harnesses/code/skills/design/design-md/nurix.md +214 -0
  221. package/data/harnesses/code/skills/design/design-md/variants/editorial-luxury.md +184 -0
  222. package/data/harnesses/code/skills/design/design-md/variants/expressive-saas.md +216 -0
  223. package/data/harnesses/code/skills/design/design-md/variants/quiet-premium.md +211 -0
  224. package/data/harnesses/code/skills/design/design-md/variants/terse-dense-operator.md +212 -0
  225. package/data/harnesses/code/skills/design/design-md/variants/warm-approachable.md +216 -0
  226. package/data/harnesses/code/skills/design/references/compose.md +23 -0
  227. package/data/harnesses/code/skills/design/references/content.md +28 -0
  228. package/data/harnesses/code/skills/design/references/emission.md +21 -0
  229. package/data/harnesses/code/skills/design/references/existing-apps.md +27 -0
  230. package/data/harnesses/code/skills/design/references/intake.md +36 -0
  231. package/data/harnesses/code/skills/design/references/object-pass.md +24 -0
  232. package/data/harnesses/code/skills/design/references/ship-gate.md +29 -0
  233. package/data/harnesses/code/skills/design/references/ux-patterns/Readme.md +195 -0
  234. package/data/harnesses/code/skills/design/references/ux-patterns/ai-layer.md +49 -0
  235. package/data/harnesses/code/skills/design/references/ux-patterns/attributes-lifecycle.md +43 -0
  236. package/data/harnesses/code/skills/design/references/ux-patterns/container-choice.md +44 -0
  237. package/data/harnesses/code/skills/design/references/ux-patterns/creation-paths.md +46 -0
  238. package/data/harnesses/code/skills/design/references/ux-patterns/dashboards.md +42 -0
  239. package/data/harnesses/code/skills/design/references/ux-patterns/modes.md +42 -0
  240. package/data/harnesses/code/skills/design/references/ux-patterns/object-model.md +46 -0
  241. package/data/harnesses/code/skills/design/references/ux-patterns/page-archetype.md +48 -0
  242. package/data/harnesses/code/skills/design/references/ux-patterns/promotion-demotion.md +37 -0
  243. package/data/harnesses/code/skills/design/references/ux-patterns/settings.md +42 -0
  244. package/data/harnesses/code/skills/design/references/ux-patterns/standard-pages.md +46 -0
  245. package/data/harnesses/code/skills/design/references/ux-patterns/state-matrix.md +41 -0
  246. package/data/harnesses/code/skills/design/references/ux-patterns/table-mechanics.md +48 -0
  247. package/data/harnesses/code/skills/design/references/ux-patterns/verbs.md +45 -0
  248. package/data/harnesses/code/skills/design/references/ux-patterns/viewer-context.md +40 -0
  249. package/data/harnesses/code/skills/design/scripts/README-validator.md +27 -0
  250. package/data/harnesses/code/skills/design/scripts/select-chart.mjs +596 -0
  251. package/data/harnesses/code/skills/design/scripts/validate-design-md.mjs +1198 -0
  252. package/data/harnesses/discussion/CLAUDE.md +1 -1
  253. package/data/harnesses/discussion/agents/discussion-baseline.md +27 -2
  254. package/data/harnesses/discussion/harness.json +2 -2
  255. package/data/harnesses/discussion/rules/artifacts.md +2 -0
  256. package/data/harnesses/discussion/rules/method.md +5 -1
  257. package/package.json +1 -1
  258. package/data/harnesses/code/skills/design/data/catalog/rules.csv +0 -137
  259. package/data/harnesses/code/skills/design/data/combinations/Readme.md +0 -33
  260. package/data/harnesses/code/skills/design/data/combinations/accent-presets.md +0 -113
  261. package/data/harnesses/code/skills/design/data/combinations/charts.csv +0 -33
  262. package/data/harnesses/code/skills/design/data/combinations/fonts-known.json +0 -448
  263. package/data/harnesses/code/skills/design/data/combinations/icons.csv +0 -157
  264. package/data/harnesses/code/skills/design/data/combinations/landing.csv +0 -38
  265. package/data/harnesses/code/skills/design/data/combinations/lucide-names.json +0 -2001
  266. package/data/harnesses/code/skills/design/data/combinations/manifest.json +0 -330
  267. package/data/harnesses/code/skills/design/data/combinations/motion.csv +0 -10
  268. package/data/harnesses/code/skills/design/data/combinations/palettes.csv +0 -92
  269. package/data/harnesses/code/skills/design/data/combinations/product-router.csv +0 -80
  270. package/data/harnesses/code/skills/design/data/combinations/styles.csv +0 -67
  271. package/data/harnesses/code/skills/design/data/combinations/typography.csv +0 -64
  272. package/data/harnesses/code/skills/design/data/design-md/SCHEMA.md +0 -106
  273. package/data/harnesses/code/skills/design/data/design-md/library/airbnb.md +0 -154
  274. package/data/harnesses/code/skills/design/data/design-md/library/airtable.md +0 -151
  275. package/data/harnesses/code/skills/design/data/design-md/library/anthropic-claude.md +0 -139
  276. package/data/harnesses/code/skills/design/data/design-md/library/apple.md +0 -139
  277. package/data/harnesses/code/skills/design/data/design-md/library/binance.md +0 -140
  278. package/data/harnesses/code/skills/design/data/design-md/library/bmw.md +0 -140
  279. package/data/harnesses/code/skills/design/data/design-md/library/cal.md +0 -140
  280. package/data/harnesses/code/skills/design/data/design-md/library/clay.md +0 -139
  281. package/data/harnesses/code/skills/design/data/design-md/library/clickhouse.md +0 -139
  282. package/data/harnesses/code/skills/design/data/design-md/library/cohere.md +0 -147
  283. package/data/harnesses/code/skills/design/data/design-md/library/coinbase.md +0 -156
  284. package/data/harnesses/code/skills/design/data/design-md/library/composio.md +0 -138
  285. package/data/harnesses/code/skills/design/data/design-md/library/cursor.md +0 -138
  286. package/data/harnesses/code/skills/design/data/design-md/library/elevenlabs.md +0 -137
  287. package/data/harnesses/code/skills/design/data/design-md/library/expo.md +0 -148
  288. package/data/harnesses/code/skills/design/data/design-md/library/figma.md +0 -141
  289. package/data/harnesses/code/skills/design/data/design-md/library/framer.md +0 -156
  290. package/data/harnesses/code/skills/design/data/design-md/library/hashicorp.md +0 -140
  291. package/data/harnesses/code/skills/design/data/design-md/library/ibm.md +0 -153
  292. package/data/harnesses/code/skills/design/data/design-md/library/intercom.md +0 -158
  293. package/data/harnesses/code/skills/design/data/design-md/library/kraken.md +0 -156
  294. package/data/harnesses/code/skills/design/data/design-md/library/linear-app.md +0 -122
  295. package/data/harnesses/code/skills/design/data/design-md/library/lovable.md +0 -140
  296. package/data/harnesses/code/skills/design/data/design-md/library/meta.md +0 -139
  297. package/data/harnesses/code/skills/design/data/design-md/library/minimax.md +0 -139
  298. package/data/harnesses/code/skills/design/data/design-md/library/mintlify.md +0 -139
  299. package/data/harnesses/code/skills/design/data/design-md/library/miro.md +0 -153
  300. package/data/harnesses/code/skills/design/data/design-md/library/mistral-ai.md +0 -140
  301. package/data/harnesses/code/skills/design/data/design-md/library/mongodb.md +0 -155
  302. package/data/harnesses/code/skills/design/data/design-md/library/notion.md +0 -140
  303. package/data/harnesses/code/skills/design/data/design-md/library/nvidia.md +0 -141
  304. package/data/harnesses/code/skills/design/data/design-md/library/ollama.md +0 -145
  305. package/data/harnesses/code/skills/design/data/design-md/library/opencode-ai.md +0 -142
  306. package/data/harnesses/code/skills/design/data/design-md/library/posthog.md +0 -152
  307. package/data/harnesses/code/skills/design/data/design-md/library/raycast.md +0 -137
  308. package/data/harnesses/code/skills/design/data/design-md/library/replicate.md +0 -140
  309. package/data/harnesses/code/skills/design/data/design-md/library/resend.md +0 -170
  310. package/data/harnesses/code/skills/design/data/design-md/library/revolut.md +0 -145
  311. package/data/harnesses/code/skills/design/data/design-md/library/runwayml.md +0 -137
  312. package/data/harnesses/code/skills/design/data/design-md/library/sanity.md +0 -168
  313. package/data/harnesses/code/skills/design/data/design-md/library/sentry.md +0 -163
  314. package/data/harnesses/code/skills/design/data/design-md/library/shopify.md +0 -147
  315. package/data/harnesses/code/skills/design/data/design-md/library/slack.md +0 -158
  316. package/data/harnesses/code/skills/design/data/design-md/library/spacex.md +0 -171
  317. package/data/harnesses/code/skills/design/data/design-md/library/spotify.md +0 -166
  318. package/data/harnesses/code/skills/design/data/design-md/library/stripe.md +0 -160
  319. package/data/harnesses/code/skills/design/data/design-md/library/supabase.md +0 -173
  320. package/data/harnesses/code/skills/design/data/design-md/library/superhuman.md +0 -145
  321. package/data/harnesses/code/skills/design/data/design-md/library/tesla.md +0 -153
  322. package/data/harnesses/code/skills/design/data/design-md/library/theverge.md +0 -167
  323. package/data/harnesses/code/skills/design/data/design-md/library/together-ai.md +0 -140
  324. package/data/harnesses/code/skills/design/data/design-md/library/uber.md +0 -140
  325. package/data/harnesses/code/skills/design/data/design-md/library/vercel.md +0 -140
  326. package/data/harnesses/code/skills/design/data/design-md/library/voltagent.md +0 -130
  327. package/data/harnesses/code/skills/design/data/design-md/library/warp.md +0 -140
  328. package/data/harnesses/code/skills/design/data/design-md/library/webflow.md +0 -140
  329. package/data/harnesses/code/skills/design/data/design-md/library/wired.md +0 -139
  330. package/data/harnesses/code/skills/design/data/design-md/library/wise.md +0 -137
  331. package/data/harnesses/code/skills/design/data/design-md/library/x-ai.md +0 -138
  332. package/data/harnesses/code/skills/design/data/design-md/library/zapier.md +0 -158
  333. package/data/harnesses/code/skills/design/data/design-md/nurix.md +0 -138
  334. package/data/harnesses/code/skills/design/data/design-tokens/SCHEMA.md +0 -695
  335. package/data/harnesses/code/skills/design/data/design-tokens/airbnb/design.resolver.json +0 -20
  336. package/data/harnesses/code/skills/design/data/design-tokens/airbnb/design.tokens.json +0 -1272
  337. package/data/harnesses/code/skills/design/data/design-tokens/airtable/design.resolver.json +0 -20
  338. package/data/harnesses/code/skills/design/data/design-tokens/airtable/design.tokens.json +0 -1268
  339. package/data/harnesses/code/skills/design/data/design-tokens/anthropic-claude/design.resolver.json +0 -20
  340. package/data/harnesses/code/skills/design/data/design-tokens/anthropic-claude/design.tokens.json +0 -1273
  341. package/data/harnesses/code/skills/design/data/design-tokens/apple/design.resolver.json +0 -20
  342. package/data/harnesses/code/skills/design/data/design-tokens/apple/design.tokens.json +0 -1262
  343. package/data/harnesses/code/skills/design/data/design-tokens/binance/design.resolver.json +0 -20
  344. package/data/harnesses/code/skills/design/data/design-tokens/binance/design.tokens.json +0 -1257
  345. package/data/harnesses/code/skills/design/data/design-tokens/bmw/design.resolver.json +0 -20
  346. package/data/harnesses/code/skills/design/data/design-tokens/bmw/design.tokens.json +0 -1270
  347. package/data/harnesses/code/skills/design/data/design-tokens/cal/design.resolver.json +0 -20
  348. package/data/harnesses/code/skills/design/data/design-tokens/cal/design.tokens.json +0 -1270
  349. package/data/harnesses/code/skills/design/data/design-tokens/clay/design.resolver.json +0 -20
  350. package/data/harnesses/code/skills/design/data/design-tokens/clay/design.tokens.json +0 -1261
  351. package/data/harnesses/code/skills/design/data/design-tokens/clickhouse/design.resolver.json +0 -20
  352. package/data/harnesses/code/skills/design/data/design-tokens/clickhouse/design.tokens.json +0 -1268
  353. package/data/harnesses/code/skills/design/data/design-tokens/cohere/design.resolver.json +0 -20
  354. package/data/harnesses/code/skills/design/data/design-tokens/cohere/design.tokens.json +0 -1281
  355. package/data/harnesses/code/skills/design/data/design-tokens/coinbase/design.resolver.json +0 -20
  356. package/data/harnesses/code/skills/design/data/design-tokens/coinbase/design.tokens.json +0 -1262
  357. package/data/harnesses/code/skills/design/data/design-tokens/composio/design.resolver.json +0 -20
  358. package/data/harnesses/code/skills/design/data/design-tokens/composio/design.tokens.json +0 -1271
  359. package/data/harnesses/code/skills/design/data/design-tokens/cursor/design.resolver.json +0 -20
  360. package/data/harnesses/code/skills/design/data/design-tokens/cursor/design.tokens.json +0 -1276
  361. package/data/harnesses/code/skills/design/data/design-tokens/elevenlabs/design.resolver.json +0 -20
  362. package/data/harnesses/code/skills/design/data/design-tokens/elevenlabs/design.tokens.json +0 -1293
  363. package/data/harnesses/code/skills/design/data/design-tokens/expo/design.resolver.json +0 -20
  364. package/data/harnesses/code/skills/design/data/design-tokens/expo/design.tokens.json +0 -1270
  365. package/data/harnesses/code/skills/design/data/design-tokens/figma/design.resolver.json +0 -20
  366. package/data/harnesses/code/skills/design/data/design-tokens/figma/design.tokens.json +0 -1276
  367. package/data/harnesses/code/skills/design/data/design-tokens/framer/design.resolver.json +0 -20
  368. package/data/harnesses/code/skills/design/data/design-tokens/framer/design.tokens.json +0 -1267
  369. package/data/harnesses/code/skills/design/data/design-tokens/goldens.json +0 -251
  370. package/data/harnesses/code/skills/design/data/design-tokens/hashicorp/design.resolver.json +0 -20
  371. package/data/harnesses/code/skills/design/data/design-tokens/hashicorp/design.tokens.json +0 -1273
  372. package/data/harnesses/code/skills/design/data/design-tokens/ibm/design.resolver.json +0 -20
  373. package/data/harnesses/code/skills/design/data/design-tokens/ibm/design.tokens.json +0 -1286
  374. package/data/harnesses/code/skills/design/data/design-tokens/intercom/design.resolver.json +0 -20
  375. package/data/harnesses/code/skills/design/data/design-tokens/intercom/design.tokens.json +0 -1290
  376. package/data/harnesses/code/skills/design/data/design-tokens/kraken/design.resolver.json +0 -20
  377. package/data/harnesses/code/skills/design/data/design-tokens/kraken/design.tokens.json +0 -1270
  378. package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.resolver.json +0 -23
  379. package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.tokens.dark.json +0 -599
  380. package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.tokens.json +0 -1272
  381. package/data/harnesses/code/skills/design/data/design-tokens/lovable/design.resolver.json +0 -20
  382. package/data/harnesses/code/skills/design/data/design-tokens/lovable/design.tokens.json +0 -1267
  383. package/data/harnesses/code/skills/design/data/design-tokens/meta/design.resolver.json +0 -20
  384. package/data/harnesses/code/skills/design/data/design-tokens/meta/design.tokens.json +0 -1289
  385. package/data/harnesses/code/skills/design/data/design-tokens/minimax/design.resolver.json +0 -20
  386. package/data/harnesses/code/skills/design/data/design-tokens/minimax/design.tokens.json +0 -1258
  387. package/data/harnesses/code/skills/design/data/design-tokens/mintlify/design.resolver.json +0 -20
  388. package/data/harnesses/code/skills/design/data/design-tokens/mintlify/design.tokens.json +0 -1284
  389. package/data/harnesses/code/skills/design/data/design-tokens/miro/design.resolver.json +0 -20
  390. package/data/harnesses/code/skills/design/data/design-tokens/miro/design.tokens.json +0 -1291
  391. package/data/harnesses/code/skills/design/data/design-tokens/mistral-ai/design.resolver.json +0 -20
  392. package/data/harnesses/code/skills/design/data/design-tokens/mistral-ai/design.tokens.json +0 -1263
  393. package/data/harnesses/code/skills/design/data/design-tokens/mongodb/design.resolver.json +0 -20
  394. package/data/harnesses/code/skills/design/data/design-tokens/mongodb/design.tokens.json +0 -1270
  395. package/data/harnesses/code/skills/design/data/design-tokens/notion/design.resolver.json +0 -20
  396. package/data/harnesses/code/skills/design/data/design-tokens/notion/design.tokens.json +0 -1261
  397. package/data/harnesses/code/skills/design/data/design-tokens/nurix/design.resolver.json +0 -20
  398. package/data/harnesses/code/skills/design/data/design-tokens/nurix/design.tokens.json +0 -1209
  399. package/data/harnesses/code/skills/design/data/design-tokens/nvidia/design.resolver.json +0 -20
  400. package/data/harnesses/code/skills/design/data/design-tokens/nvidia/design.tokens.json +0 -1265
  401. package/data/harnesses/code/skills/design/data/design-tokens/ollama/design.resolver.json +0 -20
  402. package/data/harnesses/code/skills/design/data/design-tokens/ollama/design.tokens.json +0 -1253
  403. package/data/harnesses/code/skills/design/data/design-tokens/opencode-ai/design.resolver.json +0 -20
  404. package/data/harnesses/code/skills/design/data/design-tokens/opencode-ai/design.tokens.json +0 -1268
  405. package/data/harnesses/code/skills/design/data/design-tokens/posthog/design.resolver.json +0 -20
  406. package/data/harnesses/code/skills/design/data/design-tokens/posthog/design.tokens.json +0 -1261
  407. package/data/harnesses/code/skills/design/data/design-tokens/raycast/design.resolver.json +0 -20
  408. package/data/harnesses/code/skills/design/data/design-tokens/raycast/design.tokens.json +0 -1263
  409. package/data/harnesses/code/skills/design/data/design-tokens/replicate/design.resolver.json +0 -20
  410. package/data/harnesses/code/skills/design/data/design-tokens/replicate/design.tokens.json +0 -1266
  411. package/data/harnesses/code/skills/design/data/design-tokens/resend/design.resolver.json +0 -23
  412. package/data/harnesses/code/skills/design/data/design-tokens/resend/design.tokens.dark.json +0 -623
  413. package/data/harnesses/code/skills/design/data/design-tokens/resend/design.tokens.json +0 -1276
  414. package/data/harnesses/code/skills/design/data/design-tokens/revolut/design.resolver.json +0 -20
  415. package/data/harnesses/code/skills/design/data/design-tokens/revolut/design.tokens.json +0 -1264
  416. package/data/harnesses/code/skills/design/data/design-tokens/runwayml/design.resolver.json +0 -20
  417. package/data/harnesses/code/skills/design/data/design-tokens/runwayml/design.tokens.json +0 -1268
  418. package/data/harnesses/code/skills/design/data/design-tokens/sanity/design.resolver.json +0 -20
  419. package/data/harnesses/code/skills/design/data/design-tokens/sanity/design.tokens.json +0 -1270
  420. package/data/harnesses/code/skills/design/data/design-tokens/sentry/design.resolver.json +0 -20
  421. package/data/harnesses/code/skills/design/data/design-tokens/sentry/design.tokens.json +0 -1288
  422. package/data/harnesses/code/skills/design/data/design-tokens/shopify/design.resolver.json +0 -20
  423. package/data/harnesses/code/skills/design/data/design-tokens/shopify/design.tokens.json +0 -1272
  424. package/data/harnesses/code/skills/design/data/design-tokens/slack/design.resolver.json +0 -20
  425. package/data/harnesses/code/skills/design/data/design-tokens/slack/design.tokens.json +0 -1265
  426. package/data/harnesses/code/skills/design/data/design-tokens/spacex/design.resolver.json +0 -20
  427. package/data/harnesses/code/skills/design/data/design-tokens/spacex/design.tokens.json +0 -1287
  428. package/data/harnesses/code/skills/design/data/design-tokens/spotify/design.resolver.json +0 -20
  429. package/data/harnesses/code/skills/design/data/design-tokens/spotify/design.tokens.json +0 -1286
  430. package/data/harnesses/code/skills/design/data/design-tokens/stripe/design.resolver.json +0 -20
  431. package/data/harnesses/code/skills/design/data/design-tokens/stripe/design.tokens.json +0 -1285
  432. package/data/harnesses/code/skills/design/data/design-tokens/supabase/design.resolver.json +0 -20
  433. package/data/harnesses/code/skills/design/data/design-tokens/supabase/design.tokens.json +0 -1287
  434. package/data/harnesses/code/skills/design/data/design-tokens/superhuman/design.resolver.json +0 -20
  435. package/data/harnesses/code/skills/design/data/design-tokens/superhuman/design.tokens.json +0 -1278
  436. package/data/harnesses/code/skills/design/data/design-tokens/tesla/design.resolver.json +0 -20
  437. package/data/harnesses/code/skills/design/data/design-tokens/tesla/design.tokens.json +0 -1269
  438. package/data/harnesses/code/skills/design/data/design-tokens/theverge/design.resolver.json +0 -20
  439. package/data/harnesses/code/skills/design/data/design-tokens/theverge/design.tokens.json +0 -1285
  440. package/data/harnesses/code/skills/design/data/design-tokens/together-ai/design.resolver.json +0 -20
  441. package/data/harnesses/code/skills/design/data/design-tokens/together-ai/design.tokens.json +0 -1303
  442. package/data/harnesses/code/skills/design/data/design-tokens/uber/design.resolver.json +0 -20
  443. package/data/harnesses/code/skills/design/data/design-tokens/uber/design.tokens.json +0 -1274
  444. package/data/harnesses/code/skills/design/data/design-tokens/vercel/design.resolver.json +0 -20
  445. package/data/harnesses/code/skills/design/data/design-tokens/vercel/design.tokens.json +0 -1296
  446. package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.resolver.json +0 -23
  447. package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.tokens.dark.json +0 -612
  448. package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.tokens.json +0 -1282
  449. package/data/harnesses/code/skills/design/data/design-tokens/warp/design.resolver.json +0 -20
  450. package/data/harnesses/code/skills/design/data/design-tokens/warp/design.tokens.json +0 -1287
  451. package/data/harnesses/code/skills/design/data/design-tokens/webflow/design.resolver.json +0 -20
  452. package/data/harnesses/code/skills/design/data/design-tokens/webflow/design.tokens.json +0 -1268
  453. package/data/harnesses/code/skills/design/data/design-tokens/wired/design.resolver.json +0 -20
  454. package/data/harnesses/code/skills/design/data/design-tokens/wired/design.tokens.json +0 -1276
  455. package/data/harnesses/code/skills/design/data/design-tokens/wise/design.resolver.json +0 -20
  456. package/data/harnesses/code/skills/design/data/design-tokens/wise/design.tokens.json +0 -1273
  457. package/data/harnesses/code/skills/design/data/design-tokens/x-ai/design.resolver.json +0 -20
  458. package/data/harnesses/code/skills/design/data/design-tokens/x-ai/design.tokens.json +0 -1296
  459. package/data/harnesses/code/skills/design/data/design-tokens/zapier/design.resolver.json +0 -20
  460. package/data/harnesses/code/skills/design/data/design-tokens/zapier/design.tokens.json +0 -1286
  461. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/command-center.tsx +0 -249
  462. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/create-edit.tsx +0 -249
  463. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/dashboard.tsx +0 -225
  464. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/entity-detail.tsx +0 -249
  465. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/list-detail.tsx +0 -224
  466. package/data/harnesses/code/skills/design/data/operator-pack/exemplars/log-stream.tsx +0 -249
  467. package/data/harnesses/code/skills/design/data/operator-pack/fixtures.md +0 -88
  468. package/data/harnesses/code/skills/design/data/operator-pack/surface-catalog.md +0 -132
  469. package/data/harnesses/code/skills/design/data/operator-pack/trust-rubric.md +0 -76
  470. package/data/harnesses/code/skills/design/references/create.md +0 -173
  471. package/data/harnesses/code/skills/design/references/diagnosis.md +0 -108
  472. package/data/harnesses/code/skills/design/references/hard-rules.md +0 -177
  473. package/data/harnesses/code/skills/design/references/improve.md +0 -116
  474. package/data/harnesses/code/skills/design/references/interaction.md +0 -77
  475. package/data/harnesses/code/skills/design/references/introspect.md +0 -100
  476. package/data/harnesses/code/skills/design/references/lifecycle.md +0 -73
  477. package/data/harnesses/code/skills/design/references/personality.md +0 -575
  478. package/data/harnesses/code/skills/design/references/structure.md +0 -159
  479. package/data/harnesses/code/skills/design/scripts/convert-design-md.mjs +0 -1312
  480. package/data/harnesses/code/skills/design/scripts/derive-personality.mjs +0 -1498
  481. package/data/harnesses/code/skills/design/scripts/generate-fixtures.mjs +0 -551
  482. package/data/harnesses/code/skills/design/scripts/lib/checks.mjs +0 -1092
  483. package/data/harnesses/code/skills/design/scripts/lib/golden.mjs +0 -26
  484. package/data/harnesses/code/skills/design/scripts/lib/vocabulary.mjs +0 -65
  485. package/data/harnesses/code/skills/design/scripts/phase-gate.mjs +0 -538
  486. package/data/harnesses/code/skills/design/scripts/preship-sweep.mjs +0 -312
  487. package/data/harnesses/code/skills/design/scripts/render-rung.mjs +0 -890
  488. package/data/harnesses/code/skills/design/scripts/scaffold.mjs +0 -769
  489. package/data/harnesses/code/skills/design/scripts/self-integrity.mjs +0 -675
  490. package/data/harnesses/code/skills/design/scripts/snapshot-goldens.mjs +0 -164
  491. package/data/harnesses/code/skills/design/scripts/validate-combinations.mjs +0 -439
@@ -1,140 +0,0 @@
1
- ---
2
- schema: design-md/v1
3
- product: Notion
4
- provenance: library
5
- sourced: 2026-07-04
6
- ---
7
-
8
- # Notion — the warm-editorial operator design
9
-
10
- The operator reading of Notion's brand: a warm, paper-toned workspace where hierarchy is carried by
11
- hairlines and type weight, a single purple reserved for the one action that matters, and sober
12
- rectangular geometry — never pills. What carries is the temperament — warm-charcoal ink over
13
- off-white paper, beige hairline discipline, the 8px-button / 12px-card rhythm, one purple signal.
14
- What stays behind: the deep-navy marketing hero band, the pastel feature-card rainbow, the 80px
15
- display.
16
-
17
- ## 1 Visual Theme
18
-
19
- Light by default; dark is opt-in. Flat: structure comes from a warm hairline `border`, type weight, and
20
- contrast — never heavy shadow. A single accent, Notion `primary` (signature purple), reserved for the
21
- one dominant action on a surface. The neutral ramp is Notion's defining trait — it leans *warm*, not
22
- cool-slate: warm-charcoal ink, faint paper off-white surfaces, beige-tinted hairlines, so the UI reads
23
- editorial and calm rather than clinical. The anchor surface is a white content canvas beside a warm
24
- off-white `sidebar`. Geometry is sober-rectangular — 8px buttons, 12px cards, pills for status badges
25
- only. Density is `standard`: comfortable, dense-capable in tables, never cramped.
26
-
27
- ## 2 Color Roles
28
-
29
- Light values first. One accent — `primary` purple is the only chromatic hue that carries an action;
30
- inline links stay a distinct blue; status hues speak only status; the pastel rainbow does not enter
31
- operator chrome.
32
-
33
- | Role | Value | Allowed where |
34
- | --- | --- | --- |
35
- | `background` / `card` / `popover` | canvas white `#ffffff` | page, cards, and overlays — the dominant surface |
36
- | `foreground` | warm charcoal `#37352f` | all primary ink (Notion's signature product text color) |
37
- | `muted` / `secondary` | paper off-white `#f6f5f4` | hover rows, subtle fills, secondary buttons |
38
- | `muted-foreground` | warm slate `#5d5b54` | labels, captions, secondary text |
39
- | `border` | warm hairline `#e5e3df` | every separator, grid line, and card edge |
40
- | `input` | stronger hairline `#c8c4be` | field edges — one step darker than `border`, so inputs read as targets |
41
- | `primary` | Notion purple `#5645d4` | the one primary action; active nav; key interactive detail |
42
- | `accent` | lavender tint `#e6e0f5` | selected/hovered rows and nav — the purple's soft cousin |
43
- | `accent-foreground` | deep purple `#391c57` | text and icons on `accent` fills |
44
- | `ring` | `primary` | the focus outline — unmistakable, because keyboard-first |
45
- | `destructive` | red `#e03131` | destructive actions and error state only |
46
- | `success` / `warning` | green `#1aae39` / orange `#dd5b00` | status signalling only, never chrome |
47
-
48
- Inline text links use link-blue `#0075de`, kept distinct from `primary` purple (a Notion rule: links and
49
- CTAs never share a hue). The pastel feature tints and the navy hero are brand graces — no operator role (§7).
50
-
51
- ## 3 Typography
52
-
53
- One sans, one mono. `font-sans` is Inter — Notion Sans is an Inter-based proprietary variable face, so the
54
- operator wears its documented fallback; body, UI, and headings all ride it, with weight and tracking (not
55
- a second family) carrying the display voice. `font-mono` serves IDs, codes, timestamps, and log lines.
56
- Numeric columns render `tabular-nums` so figures align down a column (floor f04).
57
-
58
- | Step | Role | Size · line | Weight · tracking |
59
- | --- | --- | --- | --- |
60
- | h1 | page title | 24px / 1.25 | `font-weight-strong` · `heading-tracking` |
61
- | h2 | section head | 18px / 1.3 | `font-weight-strong` · `heading-tracking` |
62
- | h3 | card / group head | 15px / 1.4 | `font-weight-strong` · `heading-tracking` |
63
- | body | UI + prose | 14px / 1.5 | `font-weight-normal` |
64
- | small | labels, meta, dense table | 13px / 1.4 | `font-weight-normal` |
65
- | caption | uppercase eyebrow | 11px / 1.4 | `font-weight-strong`, `+0.09em`, uppercase |
66
-
67
- Notion's generous body leading (1.5) survives for readability; headings track negative, matching Notion's
68
- tight display letter-spacing. Bump weight one step for emphasis — never change size to emphasize.
69
-
70
- ## 4 Component Stylings
71
-
72
- Every recurring operator component composes from the primitives — no literal values.
73
-
74
- - **Button** — `primary`: filled `primary` on `primary-foreground`, `radius` (8px rectangle), no pill.
75
- Secondary: `background` fill, 1px `input` border, `foreground`. Ghost: transparent, `accent` on hover.
76
- - **Input** — `background` fill, 1px `input` border (`border-weight`), `radius`; focus draws the `ring` at
77
- full 2px, no glow.
78
- - **Card** — `card` surface, 1px `border`, `radius` (12px), shadow only when lifted (`shadow-intensity`);
79
- inset by `density-inset`.
80
- - **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
81
- numeric columns; row selection tints `accent` (lavender).
82
- - **Side panel** — detail and edit open beside the work (`side-panel-width` / `side-panel-width-rich`),
83
- not over it (floor f03).
84
- - **Badge** — status badges take the pill radius (`9999`) with `success` / `warning` / `destructive`
85
- fills; a feature tag chip is a soft `radius`-4 rectangle in `accent` on `accent-foreground`.
86
-
87
- ## 5 Layout
88
-
89
- Base spacing unit 4px (Tailwind `--spacing` 0.25rem); the on-scale ramp is `4 · 8 · 12 · 16 · 20 · 24 ·
90
- 32 · 40 · 48 · 64`. Shell dimensions map one-to-one to the layout primitives: sidebar
91
- `sidebar-width-expanded` / `sidebar-width-collapsed`, topbar `topbar-height`, side panel
92
- `side-panel-width` / `side-panel-width-rich`, modal cap `modal-width-max`, forms `form-max-width`, tables
93
- full-width. Density is governed globally by `density-tier` and stepped per archetype by the surface catalog — never by absolute overrides.
94
-
95
- ## 6 Depth
96
-
97
- Flat. Hierarchy comes from the warm surface ladder and hairlines, not shadow:
98
-
99
- - **0 — canvas** `background`, no border.
100
- - **1 — panel / card** `card` on a 1px `border`; a soft low-alpha `sm` shadow only when a tile must lift.
101
- - **2 — overlay** `popover` / side panel / modal — the one place `shadow-intensity` earns a soft `md`
102
- shadow (Notion's shadows are near-black at very low alpha, diffuse, never harsh). Rank is border and
103
- position, never a heavier shadow.
104
-
105
- Focus is a 2px `ring` outline in `primary` (never a glow), visible on every interactive element (floor
106
- P6). Three z-levels: content, sticky chrome, overlay.
107
-
108
- ## 7 Do's & Don'ts
109
-
110
- - **Do** reserve `primary` purple for the single most important action; everything else is neutral or status.
111
- - **Do** keep the neutrals warm — charcoal ink, paper off-white fills, beige hairlines. Cool slate reads as a different product.
112
- - **Do** carry hierarchy with hairlines, weight, and whitespace — Notion is predominantly flat.
113
- - **Do** apply `tabular-nums` to every numeric column and `font-mono` to IDs, codes, and timestamps.
114
- - **Don't** pill the primary CTA — Notion buttons are 8px rectangles; pills are for status badges only.
115
- - **Don't** promote a second chromatic accent. The pastel rainbow stays marketing-decorative; status uses `success` / `warning` / `destructive`, selection uses `accent`.
116
- - **Don't** color inline links purple — links are link-blue, distinct from the `primary` CTA hue.
117
- - **Don't** signal elevation with heavy drop shadows or reach for the navy hero band as a surface.
118
-
119
- ## 8 Responsive
120
-
121
- The operator sweep is 375 / 768 / 1024 / 1440.
122
-
123
- | Breakpoint | What changes |
124
- | --- | --- |
125
- | 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
126
- | 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
127
- | 1024 | sidebar expands; two-pane list+detail holds side by side |
128
- | 1440 | content caps at `form-max-width` for forms; tables and dashboards use the full width |
129
-
130
- ## 9 Agent Prompt Guide
131
-
132
- Directives the emitting agent follows verbatim:
133
-
134
- - Lead every list surface with its table; lead every entity with its primary read, not its chrome.
135
- - Keep the neutral ramp warm — charcoal ink on paper off-white, beige hairlines. Do not cool it to slate.
136
- - Accent only the primary action with purple. Inline links are link-blue; the two hues never merge.
137
- - Selection and hover tint `accent` (lavender); the pastel rainbow and the navy hero stay behind.
138
- - Sober rectangles: 8px buttons, 12px cards. Pills are for status badges only — never the CTA.
139
- - Every numeric column is `tabular-nums`; every ID / code / timestamp is `font-mono` (f04).
140
- - Every workflow completes from the keyboard, `ring` focus always visible (f06); stay flat — hairline and weight before shadow, reaching past a hairline only for a real overlay.
@@ -1,141 +0,0 @@
1
- ---
2
- schema: design-md/v1
3
- product: NVIDIA
4
- provenance: library
5
- sourced: 2026-07-04
6
- ---
7
-
8
- # NVIDIA — the operator reading
9
-
10
- The operator reading of NVIDIA's marketing system: an engineering-grade look reduced to four colors
11
- — black, white, gray, and one violently saturated green — on an aggressively angular 2px grid.
12
- NVIDIA's own surfaces alternate deep-black hero/footer chapters with paper-white body content under
13
- hero-scale display type. This entry keeps what survives at operator scale: the strict single-green
14
- accent, the pure black/white/gray palette, the 2px radius, the weight-not-size type hierarchy, and
15
- flat hairline depth. The 48px display, dark hero chapters, corner squares, and editorial purple/blue
16
- washes stay behind. Unmistakably NVIDIA — stark, technical, one-color.
17
-
18
- ## 1 Visual Theme
19
-
20
- Light by default: a paper-white content canvas, ink-black type, a hairline gray grid. The black brand
21
- frame is opt-in *structure*, not a dark theme — NVIDIA's chrome is pure black, so an operator shell
22
- wears a black `sidebar` around the white canvas. Flat by conviction: hierarchy comes from hairline
23
- `border`, pure-black ink, and 700-weight type — never shadow. A single accent, NVIDIA Green `primary`
24
- (`#76b900`), carries the one action and the active state; black text sits on the green fill, never
25
- white. The neutral ramp is true grayscale — no temperature tilt. Aggressively angular (`radius` 2px
26
- everywhere); density is `dense` — this reads like engineering documentation, not consumer software.
27
-
28
- ## 2 Color Roles
29
-
30
- Light values (hex — the corpus's native format). One accent: `primary` green is the only chromatic hue
31
- that carries brand meaning; status hues speak only status, and the editorial purples and pales are
32
- marketing graces with no role here (see §7).
33
-
34
- | Role | Value | Allowed where |
35
- | --- | --- | --- |
36
- | `background` / `card` / `popover` | white `#ffffff` | page, cards, and overlays — the dominant body surface |
37
- | `foreground` | pure black `#000000` | all primary ink and headlines — NVIDIA's stark ink is the identity |
38
- | `muted` / `secondary` | soft surface `#f7f7f7` | hover rows, subtle fills, secondary buttons |
39
- | `muted-foreground` | gray `#757575` | labels, captions, metadata, breadcrumbs |
40
- | `border` / `input` | hairline `#cccccc` | every separator, grid line, and field edge — the highest-frequency token |
41
- | `primary` / `primary-foreground` | NVIDIA Green `#76b900` / black `#000000` | the one primary action, active nav, focus ring — black on green, never white |
42
- | `accent` / `accent-foreground` | pale green wash `#eef7d6` / black `#000000` | selected/hovered rows and nav — the operator translation of the green accent |
43
- | `ring` | `primary` green | the focus outline — the brand's only focus signal, unmistakable |
44
- | `destructive` | red `#e52020` | destructive actions and error state only |
45
- | `success` / `warning` | deep green `#3f8500` / orange `#df6500` | status only — `success` kept off the saturated brand green so status ≠ accent |
46
-
47
- Link-blue `#0046a4` is inline-prose links only (see §7); the editorial purple survives only as a chart hue.
48
-
49
- ## 3 Typography
50
-
51
- One sans, no second display family — NVIDIA builds its entire hierarchy from two weights (400 and 700)
52
- and size, never a second face and never color. `font-sans` is Inter (the corpus-named substitute for
53
- the proprietary NVIDIA-EMEA cut; Arial the documented fallback) — UI, body, and headings all ride it.
54
- `font-mono` is derived: the corpus ships no monospace, but operator IDs, codes, and log lines need one.
55
- Numeric columns render `tabular-nums`; tracking is 0 across every step — NVIDIA does not tighten headings.
56
-
57
- | Step | Role | Size · line | Weight · tracking |
58
- | --- | --- | --- | --- |
59
- | h1 | page title | 24px / 1.25 | `font-weight-strong` (700) · `heading-tracking` (0) |
60
- | h2 | section head | 20px / 1.25 | `font-weight-strong` · 0 |
61
- | h3 | card / group head | 17px / 1.47 | `font-weight-strong` · 0 |
62
- | body | UI + prose | 16px / 1.5 | `font-weight-normal` (400) |
63
- | small | labels, meta, dense table | 15px / 1.4 | `font-weight-normal` |
64
- | caption | uppercase eyebrow | 14px / 1.43 | `font-weight-strong`, uppercase |
65
- | code | IDs, logs, amounts | 15px / 1.5 | `font-mono`, `font-weight-normal` |
66
-
67
- Emphasize by jumping straight to 700 — no intermediate weight; the 48px/36px hero display stays behind.
68
-
69
- ## 4 Component Stylings
70
-
71
- - **Button** — `primary`: filled green on black `primary-foreground`, `radius` (2px), no pill. Secondary
72
- (the NVIDIA outline): transparent with a 2px `primary` (green) border, `foreground` text. Ghost:
73
- transparent, `accent` on hover.
74
- - **Input** — `background` fill, 1px `border` (`border-weight`), `radius`; focus swaps the edge to a 2px
75
- `ring` (green) border — the only focus signal in the system, no glow.
76
- - **Card** — `card` surface on a 1px `border`, `radius`, no shadow; separation is the hairline, not elevation.
77
- - **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
78
- numeric columns; row selection tints `accent`.
79
- - **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`
80
- for content-heavy), beside the work, not over it.
81
- - **Badge** — `secondary` fill, hairline `border`, uppercase caption; status badges take `success` /
82
- `warning` / `destructive`, never `primary`.
83
-
84
- ## 5 Layout
85
-
86
- Base spacing unit 4px (Tailwind `--spacing`); the on-scale ramp is `2 · 4 · 8 · 12 · 16 · 24 · 32 · 48 ·
87
- 64`, and NVIDIA's native 8px rhythm governs section gaps (64px between major blocks). Shell dimensions
88
- map one-to-one to the layout primitives: black sidebar `sidebar-width-expanded` / `sidebar-width-collapsed`,
89
- topbar `topbar-height` (56px, the brand's sub-nav strip height), side panel `side-panel-width` /
90
- `side-panel-width-rich`, modal cap `modal-width-max`, forms `form-max-width`, tables full-width. Density
91
- is governed globally by `density-tier` (`dense`) and stepped per archetype — never by absolute overrides.
92
-
93
- ## 6 Depth
94
-
95
- Flat — NVIDIA's cards do not lift; they are rectangles with hairline borders. Hierarchy is the surface
96
- ladder and hairlines, not shadow:
97
-
98
- - **0 — canvas** `background`, no border.
99
- - **1 — panel / card** `card` on a 1px `border` (`#cccccc`); no shadow.
100
- - **2 — overlay** `popover` / side panel / modal — the one place `shadow-intensity` earns a single soft
101
- `sm` shadow (the brand's lone 5px ambient). Rank is border and position, never a heavier shadow.
102
-
103
- On the black `sidebar`, dividers use the stronger hairline `#5e5e5e`. Focus is a 2px green `ring` outline
104
- (never a glow) on every interactive element; three z-levels (content, sticky chrome, overlay).
105
-
106
- ## 7 Do's & Don'ts
107
-
108
- - **Do** reserve `primary` green for the single most important action and the active state — treat it as
109
- a precious resource; keep black `primary-foreground` on the fill (black-on-green is the signature).
110
- - **Do** carry hierarchy with weight (jump to 700) and hairlines, hold `radius` at 2px on every
111
- interactive element, and frame the white canvas in the black `sidebar` — the black chrome is NVIDIA's identity.
112
- - **Don't** promote a second chromatic accent — the editorial purple, link-blue, and pale washes are
113
- marketing graces; status uses `success` / `warning` / `destructive`, and `success` is deep green
114
- `#3f8500`, not the saturated brand green. Link-blue is inline-prose only, never chrome or a button.
115
- - **Don't** pill the CTA or reach past 2px radius (avatars excepted); don't tint operator chrome with the
116
- saturated brand green — selection uses the pale-green `accent`.
117
- - **Don't** signal elevation with drop shadows, or reach for the marketing corner squares, hero-scale
118
- display type, or dark hero chapters in an operator surface.
119
-
120
- ## 8 Responsive
121
-
122
- The operator sweep is 375 / 768 / 1024 / 1440.
123
-
124
- | Breakpoint | What changes |
125
- | --- | --- |
126
- | 375 | black sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; dense grids scroll horizontally; density holds |
127
- | 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
128
- | 1024 | sidebar expands; two-pane queue+detail holds side by side |
129
- | 1440 | forms cap at `form-max-width`; tables and dashboards use the full width |
130
-
131
- ## 9 Agent Prompt Guide
132
-
133
- - One accent, always green. `primary` marks THE action and the active state — black on green, never
134
- white. If two things want the green, one of them is not primary.
135
- - Frame the app in NVIDIA's black chrome: a black `sidebar` around a white content canvas, active nav in green.
136
- - Build type hierarchy from weight (400 vs 700) and size — never a second family, never color; tracking 0.
137
- - Every numeric column is `tabular-nums`; every ID / code / timestamp is `font-mono`. Hold `radius` at 2px everywhere; no pills.
138
- - Success status is deep green `#3f8500`, not the brand green; stay flat — hairline and weight before shadow.
139
- - Leave behind the marketing skin: 48px display headlines, dark full-bleed hero chapters, decorative
140
- corner squares, and the editorial purple/blue/pale accents. What carries: the black/white/gray/green
141
- palette, the neutral temperature, the 2px angular radius, the weight-not-size voice, and flat depth.
@@ -1,145 +0,0 @@
1
- ---
2
- schema: design-md/v1
3
- product: Ollama
4
- provenance: library
5
- sourced: 2026-07-04
6
- ---
7
-
8
- # Ollama — the monochrome documentation operator
9
-
10
- An operator reading of Ollama's defiantly minimal brand: paper-white canvas end to end, hairline
11
- borders instead of shadow, and a single accent that is pure black itself. Ollama's marketing surface
12
- reads like a Markdown README — one continuous white sheet, a rounded display face, a black pill CTA,
13
- an inline `curl` snippet as the hero. An operator surface keeps the palette, the flatness, the
14
- rounded type voice, and the airy rhythm; it leaves behind the hero-scale display type, the full-pill
15
- CTA on every action, and the marketing whitespace at 88px.
16
-
17
- ## 1 Visual Theme
18
-
19
- Light by default; dark is opt-in. Aggressively flat — hierarchy is carried by 1px hairline `border`,
20
- type weight, and pure-black contrast, never by shadow (the brand has no drop-shadow elevation at all).
21
- The system is monochrome: `primary` is pure black `#000000`, the only chromatic hue that carries
22
- meaning. Status hues speak only status. The single non-neutral note is the focus `ring` — a functional
23
- blue, the brand's one deliberate exception, not a second accent. The type voice is rounded and
24
- approachable (a Nunito-class geometric sans), the radius character soft. The anchor surface is a
25
- continuous white canvas beside a faint off-white `sidebar`. Density is `spacious` — whitespace is the
26
- brand's whole layout — and steps denser per surface archetype.
27
-
28
- ## 2 Color Roles
29
-
30
- Values are the brand's own. One accent — black — carries interaction; status hues signal only
31
- status.
32
-
33
- | Role | Value | Allowed where |
34
- | --- | --- | --- |
35
- | `background` / `card` / `popover` | white `#ffffff` | page, cards, and overlays — one continuous sheet, no surface alternation |
36
- | `foreground` | pure black `#000000` | headings, key data, primary ink — the brand commits to true black |
37
- | `muted` / `secondary` | soft off-white `#fafafa` | hover rows, subtle fills, secondary buttons |
38
- | `muted-foreground` | neutral gray `#737373` | body prose, labels, captions, secondary text |
39
- | `border` / `input` | hairline `#e5e5e5` | every separator, grid line, and field edge |
40
- | `primary` | pure black `#000000` | the one primary action; active nav; solid icons |
41
- | `accent` | pale gray `#f5f5f5` | selected/hovered rows and nav — a step past `muted` so selection reads distinct |
42
- | `ring` | focus blue `#3b82f6` | the focus outline only — the brand's single functional non-monochrome element |
43
- | `destructive` | red `#c92a2a` | destructive actions and error state only |
44
- | `success` / `warning` | green `#1a7f37` / amber `#b45309` | status signalling only, never chrome |
45
-
46
- The dark surface `#171717` is the brand's one inverted "look here" device — earn it once per view, never
47
- twice. Terminal traffic-light hues stay inside mono/terminal ornament; they carry no operator role.
48
-
49
- ## 3 Typography
50
-
51
- One sans, one mono. `font-sans` is a Nunito-class rounded geometric sans — the corpus's named substitute
52
- for the brand's SF Pro Rounded, and the one thing that makes the UI read as Ollama; headings and body
53
- share it. `font-mono` is JetBrains Mono for IDs, codes, timestamps, log lines, and install snippets.
54
- Numeric columns render `tabular-nums` so figures align down a column.
55
-
56
- | Step | Role | Size · line | Weight · tracking |
57
- | --- | --- | --- | --- |
58
- | h1 | page title | 30px / 1.2 | `font-weight-strong` · `heading-tracking` |
59
- | h2 | section head | 24px / 1.33 | `font-weight-strong` · `heading-tracking` |
60
- | h3 | card / group head | 18px / 1.4 | `font-weight-strong` · `heading-tracking` |
61
- | body | UI + prose | 14px / 1.45 | `font-weight-normal` |
62
- | small | labels, meta, dense table | 13px / 1.4 | `font-weight-normal` |
63
- | caption | eyebrow, footer meta | 12px / 1.33 | `font-weight-normal` |
64
-
65
- The brand tracks every step at 0 — the rounded face needs no tightening. Bump weight one step for
66
- emphasis; never change size to emphasize.
67
-
68
- ## 4 Component Stylings
69
-
70
- Every recurring operator component composes from the primitives — no literal values.
71
-
72
- - **Button** — `primary`: filled black `primary` on `primary-foreground`, `radius` (soft, not a pill).
73
- Secondary: `secondary` fill, 1px `border`, `foreground`. Ghost: transparent, `accent` on hover.
74
- - **Input** — `background` fill, 1px `border` (`border-weight`), `radius`; focus draws the blue `ring`
75
- at full 2px, no glow.
76
- - **Card** — `card` surface, 1px `border`, `radius`, no shadow on the canvas (`shadow-intensity` lifts
77
- only true overlays); inset by `density-inset`.
78
- - **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `accent` on
79
- selection; `tabular-nums` on numeric columns; `font-mono` on IDs and codes.
80
- - **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`
81
- for content-heavy), beside the work, not over it.
82
- - **Badge / chip** — hairline `border` with `muted` or status fill, and may keep the brand's full pill
83
- radius (a monochrome nod); status badges take `success` / `warning` / `destructive`, never `primary`.
84
-
85
- ## 5 Layout
86
-
87
- Framework base unit 4px (Tailwind `--spacing` 0.25rem); the on-scale ramp is `2 · 4 · 8 · 12 · 16 · 24 ·
88
- 32 · 48 · 64 · 88`, where 88px is the brand's signature section rhythm (used between major blocks, not
89
- between rows). Shell dimensions map one-to-one to the layout primitives: sidebar `sidebar-width-expanded`
90
- / `sidebar-width-collapsed`, topbar `topbar-height`, side panel `side-panel-width` /
91
- `side-panel-width-rich`, modal cap `modal-width-max`, forms `form-max-width`, tables full-width. Density
92
- is `spacious` globally (rewriting the spacing scale through `density-gap`) and stepped per archetype by
93
- the surface catalog — never by absolute overrides.
94
-
95
- ## 6 Depth
96
-
97
- Flat. Hierarchy comes from the surface ladder, hairlines, and the one inverted dark surface — not shadow:
98
-
99
- - **0 — canvas** `background`, no border.
100
- - **1 — panel / card** `card` on a 1px `border`; no shadow on the canvas.
101
- - **2 — overlay** `popover` / side panel / modal — the only place `shadow-intensity` earns a whisper of
102
- `sm`/`md` shadow to separate the overlay from the sheet beneath.
103
-
104
- The dark surface `#171717` is the brand's single non-shadow emphasis device — a dark banner or spotlight
105
- panel, used once per view to draw the eye. Focus is a 2px blue `ring` outline (never a glow), visible on
106
- every interactive element. Three z-levels: content, sticky chrome, overlay.
107
-
108
- ## 7 Do's & Don'ts
109
-
110
- - **Do** stay monochrome: black `primary` on white, gray text, hairline borders. That is the identity.
111
- - **Do** reserve black for the single most important action on a surface; keep it scarce per view.
112
- - **Do** carry hierarchy with hairlines, weight, and whitespace — never shadow.
113
- - **Do** keep the rounded sans voice; it is the brand's only "personality," and it must survive.
114
- - **Do** apply `tabular-nums` to every numeric column and `font-mono` to IDs, codes, and timestamps.
115
- - **Don't** introduce a second chromatic accent, a gradient, or an atmospheric background — status hues
116
- are the only color besides the black accent and the functional blue ring.
117
- - **Don't** full-pill every button; the marketing pill relaxes to the soft `radius` for dense scanning
118
- (pills stay available for chips and a singular hero action only).
119
- - **Don't** lift cards with shadow; use a hairline `border` or the one inverted dark surface.
120
- - **Don't** swap in a second display font — one rounded sans carries headings and body alike.
121
-
122
- ## 8 Responsive
123
-
124
- The operator sweep is 375 / 768 / 1024 / 1440.
125
-
126
- | Breakpoint | What changes |
127
- | --- | --- |
128
- | 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; section air tightens |
129
- | 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
130
- | 1024 | sidebar expands; two-pane queue+detail holds side by side |
131
- | 1440 | content caps at `form-max-width` for forms; tables and dashboards use the full width |
132
-
133
- ## 9 Agent Prompt Guide
134
-
135
- Directives the emitting agent follows verbatim:
136
-
137
- - Lead every list surface with its table; lead every entity with its primary read, not its chrome.
138
- - Stay monochrome — black is the accent. If something wants color, it is either status or nothing.
139
- - One black action per surface. If two things want black, one of them is not primary.
140
- - Flat before shadow: hairline `border` and the surface ladder carry rank; reach for shadow only for a
141
- real overlay. The one dark surface is the single emphasis device — use it once.
142
- - Keep the rounded sans voice; it is what makes the UI read as Ollama, not a generic gray admin.
143
- - Every numeric column is `tabular-nums`; every ID / code / timestamp / log line is `font-mono`.
144
- - The focus `ring` is the blue — the brand's one functional non-monochrome element; keep it visible.
145
- - Detail and edit go in the side panel; a modal is a confirmation, not a workspace.
@@ -1,142 +0,0 @@
1
- ---
2
- schema: design-md/v1
3
- product: OpenCode
4
- provenance: library
5
- sourced: 2026-07-04
6
- ---
7
-
8
- # OpenCode — the terminal-native monospace operator design
9
-
10
- OpenCode's marketing site is a manpage rendered at modern resolution: every word sits in one monospaced
11
- face on a warm cream canvas, ASCII `[+]`/`[-]` markers stand in for icons, and a single dark card mocks
12
- up the OpenCode TUI. This entry is the *operator* reading of that brand — an internal tool (agent-ops
13
- console, run queue, log stream, dashboard) in OpenCode's language. What carries: the warm cream canvas
14
- (never pure white), near-black ink, the monospace-everywhere type voice, the sharp-container /
15
- 4px-interactive radius character, the single reserved Apple-Blue accent, and categorically-flat hairline
16
- depth. What stays behind: the full-bleed dark hero TUI mockup, the 38px display headline, the 96px
17
- section rhythm, the block-pixel ASCII wordmark, and the bracket markers used as bullets.
18
-
19
- **Monochrome chrome, one held accent.** The chrome is ink-on-cream monochrome; the primary action is
20
- a near-black ink button, not a colored one (the Vercel/Geist dialect), and Apple Blue (`#007aff`) is
21
- the one chromatic accent — reserved, as the source reserves it, for interactive and data signal
22
- only. It reads *light*, so the light-default floor holds.
23
-
24
- ## 1 Visual Theme
25
-
26
- Light by default; dark is opt-in. The whole UI floats on OpenCode's warm cream `background` (`#fdfcfc`)
27
- — a faintly-blushed off-white, never the cool gray the category defaults to. Emphatically flat:
28
- hierarchy is carried by hairline `border`, type weight, and the near-black/cream contrast — never a drop
29
- shadow (the source has none; nothing lifts, nothing floats). The type voice is the identity: one
30
- monospaced face carries every role (Berkeley Mono in the source, proprietary; JetBrains Mono the shipped
31
- substitute) — no sans anywhere. The primary action is a near-black ink button; Apple Blue is the single
32
- chromatic accent, held scarce. Density is `dense` — the surface reads like a terminal. The anchor
33
- surface is a cream canvas seated beside a barely-warmer `sidebar`, separated by a hairline, not a band.
34
-
35
- ## 2 Color Roles
36
-
37
- Light values. One chromatic accent — Apple Blue is the only hue that carries interactive meaning;
38
- the primary action is neutral ink; status speaks status.
39
-
40
- | Role | Value | Allowed where |
41
- | --- | --- | --- |
42
- | `background` / `card` / `popover` | warm cream `#fdfcfc` | page, cards, and overlays — one warm off-white, no surface bands |
43
- | `foreground` | near-black ink `#201d1d` | all primary ink; the primary button fill |
44
- | `muted` / `secondary` | soft warm `#f8f7f7` | hover rows, subtle fills, secondary-button fill |
45
- | `muted-foreground` | warm gray `#646262` | labels, captions, secondary text |
46
- | `border` / `input` | warm hairline `#e0dddd` | every separator, grid line, field edge (solid form of the source's `rgba(15,0,0,0.12)`) |
47
- | `primary` | near-black ink `#201d1d` | the one primary action — a dark button, never blue |
48
- | `accent` | warm selection `#f1eeee` | selected / hovered rows and nav — a warm step, never blue |
49
- | `ring` | `primary` ink `#201d1d` | the focus outline — an ink border, no glow (keyboard-first) |
50
- | Apple Blue (the accent hue) | `#007aff` | interactive: active-nav, links, selected emphasis, `chart-1` — held scarce |
51
- | `destructive` | Apple red `#ff3b30` | destructive actions and error state only |
52
- | `success` / `warning` | Apple green `#30d158` / amber `#ff9f0a` | status signalling only, never chrome |
53
-
54
- The Apple HIG semantic ramp is the brand's own; in the source it lives in the in-product TUI, and the operator surface *is* that context.
55
-
56
- ## 3 Typography
57
-
58
- There is no sans/mono split — `font-sans` and `font-mono` are the same monospaced family (JetBrains
59
- Mono, the corpus's substitute for the proprietary Berkeley Mono). One face carries body, headings,
60
- labels, IDs, and every numeric column; numerals align natively (monospace figures are already tabular),
61
- so `tabular-nums` is inherent. Weights are 400 / 500 / 700, and — the defining detail — tracking is `0`
62
- on every role: monospace does not track. The 38px display headline stays behind; a page title tops at 24px.
63
-
64
- | Step | Role | Size · line | Weight · tracking |
65
- | --- | --- | --- | --- |
66
- | h1 | page title | 24px / 1.4 | `font-weight-strong` (700) · `heading-tracking` (0) |
67
- | h2 | section head | 18px / 1.4 | `font-weight-strong` (700) · 0 |
68
- | h3 | card / group head | 16px / 1.4 | `font-weight-strong` (700) · 0 |
69
- | body | UI + prose | 14px / 1.5 | `font-weight-normal` (400) |
70
- | small | labels, meta, dense table | 13px / 1.4 | `font-weight-normal` |
71
- | caption | footer, badge, eyebrow | 12px / 1.4 | 500 (medium) |
72
- | code | IDs, logs, amounts | 13px / 1.5 | `font-weight-normal` |
73
-
74
- Emphasise by stepping weight 400 → 500 → 700; never by tracking, and never by swapping the face — there
75
- is no other face.
76
-
77
- ## 4 Component Stylings
78
-
79
- Every recurring operator component composes from the primitives — no literal values.
80
-
81
- - **Button** — primary: filled ink `primary` on cream `primary-foreground`, `radius` (4px), never a pill. Secondary: `secondary` fill, 1px `border`, `foreground`. Ghost: transparent, `accent` on hover.
82
- - **Input** — `background` fill, 1px `border` (`border-weight`), `radius` (4px); focus draws the ink `ring` at 2px — a flat border, no glow.
83
- - **Card** — `card` surface on a 1px `border`, **sharp corners** (containers are 0px); the hairline carries the lift, never a shadow; inset by `density-inset`.
84
- - **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; numerics align natively in the mono face; selection tints `accent`, active rows mark with the blue accent.
85
- - **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich` for content-heavy), beside the work, not over it.
86
- - **Badge** — 4px `radius`, `muted` / status fill, uppercase caption; status badges take `success` / `warning` / `destructive`, never `primary`.
87
-
88
- ## 5 Layout
89
-
90
- Base spacing unit 8px with fine 1 / 4px steps (the source's own base); the on-scale ramp is `1 · 4 · 8 ·
91
- 12 · 16 · 24 · 32 · 48` — the marketing 96px section rhythm stays behind. Shell dimensions map to the
92
- layout primitives: sidebar `sidebar-width-expanded` (248px) / `sidebar-width-collapsed` (56px), topbar
93
- `topbar-height` (56px, the source's nav height), side panel `side-panel-width` (420px) /
94
- `side-panel-width-rich` (640px), modal `modal-width-max`, forms `form-max-width`, tables full-width. The
95
- grid runs tight — a terminal-native brand earns its density, governed globally by `density-tier`
96
- (`dense`) and stepped per archetype by the surface catalog.
97
-
98
- ## 6 Depth
99
-
100
- Categorically flat — the source has no drop shadows; hierarchy comes from hairlines, the surface ladder,
101
- and one color inversion:
102
-
103
- - **0 — canvas** `background`, no border.
104
- - **1 — panel / card** `card` on a 1px `border`, sharp corners; the hairline alone carries the lift. Selected / hover rows warm to `accent`.
105
- - **2 — overlay** `popover` / side panel / modal — a strong hairline and position carry rank; `shadow-intensity` earns only the faintest whisper to float a true overlay off the cream.
106
- - **inlay — terminal / log / console** dark `#201d1d` with cream `on-dark` text, `#302c2c` elevated rows, and the mono face — the source's single dark moment (the hero TUI mockup) carried as the console inlay.
107
-
108
- Focus is a 2px ink `ring` outline (never a glow), visible on every interactive element; three z-levels: content, sticky chrome, overlay.
109
-
110
- ## 7 Do's & Don'ts
111
-
112
- - **Do** anchor every surface on the warm cream canvas — pure white reads as any-other-tool; the faint blush is OpenCode.
113
- - **Do** render every role in the one monospaced face — body, headings, labels, and numerics alike; the single-face decision is the entire identity.
114
- - **Do** keep the primary action a near-black ink button, and keep Apple Blue scarce — interactive, active-nav, links, and chart series only.
115
- - **Do** keep containers sharp (0px) and interactive elements at 4px; that two-value split is the radius vocabulary.
116
- - **Don't** introduce a sans-serif or a display face — there is one face, and it is monospaced.
117
- - **Don't** fill the primary button blue, promote a second chromatic accent, or signal elevation with drop shadows.
118
- - **Don't** open detail or edit in a modal when the side panel fits — a modal is a confirmation.
119
-
120
- ## 8 Responsive
121
-
122
- The operator sweep is 375 / 768 / 1024 / 1440.
123
-
124
- | Breakpoint | What changes |
125
- | --- | --- |
126
- | 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
127
- | 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
128
- | 1024 | sidebar expands; two-pane queue+detail holds side by side |
129
- | 1440 | forms cap at `form-max-width`; tables and dashboards use the full width |
130
-
131
- Terminal, log, and console inlays keep mono legibility at every breakpoint by scrolling horizontally, never wrapping.
132
-
133
- ## 9 Agent Prompt Guide
134
-
135
- Directives the emitting agent follows verbatim:
136
-
137
- - Reach for the warm cream canvas first — never pure white; the faint blush is the brand. Cards are the same cream, seated by a hairline.
138
- - Render every text role in the one monospaced face (JetBrains Mono) — there is no sans. Numerics align natively; no `tabular-nums` toggle is needed.
139
- - Keep the primary action an ink button. Spend Apple Blue only on interactive and data signal: active-nav, links, selected emphasis, chart series. If two things want the blue, one is not primary.
140
- - Keep containers sharp (0px) and interactive elements at 4px — that split is the brand's whole geometry.
141
- - Depth is hairline, surface, and position — never shadow. Dress terminal, log, and console panels in the dark inlay (`#201d1d`, mono, cream text) — real console chrome, not a light mockup of it.
142
- - Keyboard-first: the ink `ring` focus outline is always visible. Leave behind the dark hero TUI mockup, the 38px display, the 96px rhythm, the ASCII wordmark, and the bracket bullets — use real lucide icons.