@nurix/etna 0.19.49 → 0.19.51

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 (436) hide show
  1. package/data/harness-index.json +1 -1
  2. package/data/harnesses/apollo/harness.json +2 -2
  3. package/data/harnesses/apollo/hooks/hooks.json +3 -1
  4. package/data/harnesses/apollo/skills/design/SKILL.md +55 -29
  5. package/data/harnesses/apollo/skills/design/references/compose.md +8 -4
  6. package/data/harnesses/apollo/skills/design/references/content.md +5 -5
  7. package/data/harnesses/apollo/skills/design/references/existing-apps.md +1 -1
  8. package/data/harnesses/apollo/skills/design/references/intake.md +11 -7
  9. package/data/harnesses/apollo/skills/design/references/object-pass.md +1 -1
  10. package/data/harnesses/apollo/skills/design/references/ship-gate.md +3 -3
  11. package/data/harnesses/apollo/skills/design/scripts/select-chart.mjs +26 -6
  12. package/data/harnesses/code/harness.json +2 -2
  13. package/data/harnesses/code/hooks/hooks.json +3 -1
  14. package/data/harnesses/code/skills/design/SKILL.md +55 -29
  15. package/data/harnesses/code/skills/design/references/compose.md +8 -4
  16. package/data/harnesses/code/skills/design/references/content.md +5 -5
  17. package/data/harnesses/code/skills/design/references/existing-apps.md +1 -1
  18. package/data/harnesses/code/skills/design/references/intake.md +11 -7
  19. package/data/harnesses/code/skills/design/references/object-pass.md +1 -1
  20. package/data/harnesses/code/skills/design/references/ship-gate.md +3 -3
  21. package/data/harnesses/code/skills/design/scripts/select-chart.mjs +26 -6
  22. package/package.json +2 -2
  23. package/data/harnesses/apollo/skills/design/data/blueprints/browse.md +0 -38
  24. package/data/harnesses/apollo/skills/design/data/blueprints/creation-flow.md +0 -38
  25. package/data/harnesses/apollo/skills/design/data/blueprints/dashboard.md +0 -38
  26. package/data/harnesses/apollo/skills/design/data/blueprints/grid.md +0 -38
  27. package/data/harnesses/apollo/skills/design/data/blueprints/queue.md +0 -38
  28. package/data/harnesses/apollo/skills/design/data/blueprints/record-detail.md +0 -38
  29. package/data/harnesses/apollo/skills/design/data/blueprints/settings.md +0 -38
  30. package/data/harnesses/apollo/skills/design/data/chart-styling/Readme.md +0 -33
  31. package/data/harnesses/apollo/skills/design/data/chart-styling/carbon-accessible-alert-semantic.md +0 -19
  32. package/data/harnesses/apollo/skills/design/data/chart-styling/carbon-monochrome-sequential-trend.md +0 -19
  33. package/data/harnesses/apollo/skills/design/data/chart-styling/datadog-classic-six-aligned.md +0 -19
  34. package/data/harnesses/apollo/skills/design/data/chart-styling/datawrapper-tiered-gray-hierarchy.md +0 -19
  35. package/data/harnesses/apollo/skills/design/data/chart-styling/econ-red-rule-horizontal.md +0 -19
  36. package/data/harnesses/apollo/skills/design/data/chart-styling/financial-diverging-threshold-overlay.md +0 -19
  37. package/data/harnesses/apollo/skills/design/data/chart-styling/ft-vocabulary-ranked-muted.md +0 -19
  38. package/data/harnesses/apollo/skills/design/data/chart-styling/grafana-dark-threshold-bands.md +0 -19
  39. package/data/harnesses/apollo/skills/design/data/chart-styling/material-rounded-explicit-label.md +0 -19
  40. package/data/harnesses/apollo/skills/design/data/chart-styling/nyt-ghost-grid-direct-label.md +0 -19
  41. package/data/harnesses/apollo/skills/design/data/chart-styling/plot-currentcolor-inherit.md +0 -19
  42. package/data/harnesses/apollo/skills/design/data/chart-styling/saas-gradient-glow-area.md +0 -19
  43. package/data/harnesses/apollo/skills/design/data/chart-styling/shadcn-composable-css-vars.md +0 -19
  44. package/data/harnesses/apollo/skills/design/data/charts/census.csv +0 -58
  45. package/data/harnesses/apollo/skills/design/data/checklists/browse.md +0 -21
  46. package/data/harnesses/apollo/skills/design/data/checklists/creation-flow.md +0 -20
  47. package/data/harnesses/apollo/skills/design/data/checklists/dashboard.md +0 -21
  48. package/data/harnesses/apollo/skills/design/data/checklists/grid.md +0 -21
  49. package/data/harnesses/apollo/skills/design/data/checklists/queue.md +0 -21
  50. package/data/harnesses/apollo/skills/design/data/checklists/record-detail.md +0 -21
  51. package/data/harnesses/apollo/skills/design/data/checklists/settings.md +0 -21
  52. package/data/harnesses/apollo/skills/design/data/chrome/board-column.md +0 -68
  53. package/data/harnesses/apollo/skills/design/data/chrome/data-table.md +0 -63
  54. package/data/harnesses/apollo/skills/design/data/chrome/side-panel.md +0 -60
  55. package/data/harnesses/apollo/skills/design/data/chrome/sidebar.md +0 -78
  56. package/data/harnesses/apollo/skills/design/data/chrome/stat-cards.md +0 -62
  57. package/data/harnesses/apollo/skills/design/data/chrome/topbar.md +0 -65
  58. package/data/harnesses/apollo/skills/design/data/color/accent-presets.md +0 -90
  59. package/data/harnesses/apollo/skills/design/data/color/aesop-earth-mute.md +0 -91
  60. package/data/harnesses/apollo/skills/design/data/color/arc-peach-play.md +0 -90
  61. package/data/harnesses/apollo/skills/design/data/color/attio-hunter-teal.md +0 -90
  62. package/data/harnesses/apollo/skills/design/data/color/carbon-cyan-signal.md +0 -90
  63. package/data/harnesses/apollo/skills/design/data/color/clay-parchment.md +0 -90
  64. package/data/harnesses/apollo/skills/design/data/color/duolingo-feather.md +0 -90
  65. package/data/harnesses/apollo/skills/design/data/color/geist-mono-signal.md +0 -90
  66. package/data/harnesses/apollo/skills/design/data/color/linear-graphite-violet.md +0 -90
  67. package/data/harnesses/apollo/skills/design/data/color/mercury-onyx-cobalt.md +0 -90
  68. package/data/harnesses/apollo/skills/design/data/color/notion-paper-ink.md +0 -90
  69. package/data/harnesses/apollo/skills/design/data/color/radix-slate-iris.md +0 -90
  70. package/data/harnesses/apollo/skills/design/data/color/raycast-void-spectrum.md +0 -90
  71. package/data/harnesses/apollo/skills/design/data/color/spectrum-celery-fuchsia.md +0 -90
  72. package/data/harnesses/apollo/skills/design/data/color/stripe-blurple-ruby.md +0 -90
  73. package/data/harnesses/apollo/skills/design/data/color/superhuman-cod-picton.md +0 -89
  74. package/data/harnesses/apollo/skills/design/data/corpora/operations-review/companies.csv +0 -15
  75. package/data/harnesses/apollo/skills/design/data/corpora/operations-review/corpus.md +0 -87
  76. package/data/harnesses/apollo/skills/design/data/corpora/operations-review/people.csv +0 -25
  77. package/data/harnesses/apollo/skills/design/data/corpora/procurement-approvals/companies.csv +0 -15
  78. package/data/harnesses/apollo/skills/design/data/corpora/procurement-approvals/corpus.md +0 -83
  79. package/data/harnesses/apollo/skills/design/data/corpora/procurement-approvals/people.csv +0 -25
  80. package/data/harnesses/apollo/skills/design/data/corpora/revenue-analytics/companies.csv +0 -15
  81. package/data/harnesses/apollo/skills/design/data/corpora/revenue-analytics/corpus.md +0 -89
  82. package/data/harnesses/apollo/skills/design/data/corpora/revenue-analytics/people.csv +0 -25
  83. package/data/harnesses/apollo/skills/design/data/elevation/ant-design-directional-shadow.md +0 -19
  84. package/data/harnesses/apollo/skills/design/data/elevation/apple-liquid-glass-material.md +0 -18
  85. package/data/harnesses/apollo/skills/design/data/elevation/atlassian-surface-shadow-pairing.md +0 -20
  86. package/data/harnesses/apollo/skills/design/data/elevation/fluent-2-key-ambient-ramp.md +0 -20
  87. package/data/harnesses/apollo/skills/design/data/elevation/github-primer-sparing-shadow.md +0 -19
  88. package/data/harnesses/apollo/skills/design/data/elevation/ibm-carbon-layer-and-border.md +0 -19
  89. package/data/harnesses/apollo/skills/design/data/elevation/linear-dark-surface-ladder.md +0 -17
  90. package/data/harnesses/apollo/skills/design/data/elevation/material-2-key-ambient-dp-ramp.md +0 -19
  91. package/data/harnesses/apollo/skills/design/data/elevation/material-3-tonal-elevation.md +0 -21
  92. package/data/harnesses/apollo/skills/design/data/elevation/neobrutalist-hard-offset.md +0 -19
  93. package/data/harnesses/apollo/skills/design/data/elevation/neumorphic-soft-dual-shadow.md +0 -18
  94. package/data/harnesses/apollo/skills/design/data/elevation/notion-warm-minimal-hairline.md +0 -17
  95. package/data/harnesses/apollo/skills/design/data/elevation/polaris-elevation-inset-bevel.md +0 -21
  96. package/data/harnesses/apollo/skills/design/data/elevation/radix-themes-alpha-ring-scale.md +0 -19
  97. package/data/harnesses/apollo/skills/design/data/elevation/shadcn-neutral-derived-radius.md +0 -19
  98. package/data/harnesses/apollo/skills/design/data/elevation/stripe-brand-tinted-dual-shadow.md +0 -18
  99. package/data/harnesses/apollo/skills/design/data/elevation/tailwind-default-utility-scale.md +0 -19
  100. package/data/harnesses/apollo/skills/design/data/elevation/vercel-geist-shadow-as-border.md +0 -20
  101. package/data/harnesses/apollo/skills/design/data/gradients/amber-attention-fill.md +0 -16
  102. package/data/harnesses/apollo/skills/design/data/gradients/cloud-shadow-wash.md +0 -16
  103. package/data/harnesses/apollo/skills/design/data/gradients/confident-lavender-wash.md +0 -16
  104. package/data/harnesses/apollo/skills/design/data/gradients/ember-ship-flare.md +0 -18
  105. package/data/harnesses/apollo/skills/design/data/gradients/full-metal-wash.md +0 -16
  106. package/data/harnesses/apollo/skills/design/data/gradients/indigo-ruby-cta-band.md +0 -18
  107. package/data/harnesses/apollo/skills/design/data/gradients/linear-graphite-wash.md +0 -18
  108. package/data/harnesses/apollo/skills/design/data/gradients/marble-quartz-wash.md +0 -16
  109. package/data/harnesses/apollo/skills/design/data/gradients/midnight-aurora-panel.md +0 -16
  110. package/data/harnesses/apollo/skills/design/data/gradients/neutral-volume-fill.md +0 -16
  111. package/data/harnesses/apollo/skills/design/data/gradients/revenue-uptrend-fill.md +0 -16
  112. package/data/harnesses/apollo/skills/design/data/gradients/risk-decline-fill.md +0 -16
  113. package/data/harnesses/apollo/skills/design/data/gradients/signal-blue-develop.md +0 -18
  114. package/data/harnesses/apollo/skills/design/data/gradients/slate-mist-wash.md +0 -16
  115. package/data/harnesses/apollo/skills/design/data/gradients/stripe-atmosphere-mesh.md +0 -18
  116. package/data/harnesses/apollo/skills/design/data/gradients/teal-signal-accent.md +0 -16
  117. package/data/harnesses/apollo/skills/design/data/gradients/violet-magenta-promo.md +0 -16
  118. package/data/harnesses/apollo/skills/design/data/iconography.md +0 -199
  119. package/data/harnesses/apollo/skills/design/data/motion/accordion-expand.md +0 -18
  120. package/data/harnesses/apollo/skills/design/data/motion/destructive-hold-confirm.md +0 -18
  121. package/data/harnesses/apollo/skills/design/data/motion/drag-dismiss-momentum.md +0 -18
  122. package/data/harnesses/apollo/skills/design/data/motion/empty-state-arrive.md +0 -18
  123. package/data/harnesses/apollo/skills/design/data/motion/hover-lift.md +0 -18
  124. package/data/harnesses/apollo/skills/design/data/motion/modal-center-arrive.md +0 -18
  125. package/data/harnesses/apollo/skills/design/data/motion/number-ticker-roll.md +0 -18
  126. package/data/harnesses/apollo/skills/design/data/motion/onboarding-bounce.md +0 -18
  127. package/data/harnesses/apollo/skills/design/data/motion/panel-slide.md +0 -18
  128. package/data/harnesses/apollo/skills/design/data/motion/press-feedback.md +0 -18
  129. package/data/harnesses/apollo/skills/design/data/motion/progress-linear-loop.md +0 -18
  130. package/data/harnesses/apollo/skills/design/data/motion/route-crossfade.md +0 -18
  131. package/data/harnesses/apollo/skills/design/data/motion/rubber-band-overscroll.md +0 -18
  132. package/data/harnesses/apollo/skills/design/data/motion/skeleton-shimmer.md +0 -18
  133. package/data/harnesses/apollo/skills/design/data/motion/stagger-arrive.md +0 -18
  134. package/data/harnesses/apollo/skills/design/data/motion/toast-enter-stack.md +0 -18
  135. package/data/harnesses/apollo/skills/design/data/motion/tooltip-chain-instant.md +0 -18
  136. package/data/harnesses/apollo/skills/design/data/motion/trigger-anchored-reveal.md +0 -18
  137. package/data/harnesses/apollo/skills/design/data/tells.csv +0 -34
  138. package/data/harnesses/apollo/skills/design/data/typography/anton-work-sans.md +0 -17
  139. package/data/harnesses/apollo/skills/design/data/typography/archivo-black-archivo.md +0 -17
  140. package/data/harnesses/apollo/skills/design/data/typography/bitter-karla.md +0 -17
  141. package/data/harnesses/apollo/skills/design/data/typography/dm-serif-dm-sans.md +0 -17
  142. package/data/harnesses/apollo/skills/design/data/typography/fraunces-inter.md +0 -17
  143. package/data/harnesses/apollo/skills/design/data/typography/geist-geist-mono.md +0 -17
  144. package/data/harnesses/apollo/skills/design/data/typography/hubot-sans-mona-sans.md +0 -17
  145. package/data/harnesses/apollo/skills/design/data/typography/ibm-plex-sans-operator-single-family.md +0 -17
  146. package/data/harnesses/apollo/skills/design/data/typography/instrument-serif-instrument-sans.md +0 -17
  147. package/data/harnesses/apollo/skills/design/data/typography/inter-operator-single-family.md +0 -17
  148. package/data/harnesses/apollo/skills/design/data/typography/libre-baskerville-libre-franklin.md +0 -17
  149. package/data/harnesses/apollo/skills/design/data/typography/newsreader-inter.md +0 -17
  150. package/data/harnesses/apollo/skills/design/data/typography/playfair-display-source-sans.md +0 -17
  151. package/data/harnesses/apollo/skills/design/data/typography/public-sans-operator-single-family.md +0 -17
  152. package/data/harnesses/apollo/skills/design/data/typography/sohne-inter-fintech.md +0 -17
  153. package/data/harnesses/apollo/skills/design/data/typography/source-serif-source-sans.md +0 -17
  154. package/data/harnesses/apollo/skills/design/data/typography/space-grotesk-work-sans-space-mono.md +0 -17
  155. package/data/harnesses/apollo/skills/design/data/typography/spectral-manrope.md +0 -17
  156. package/data/harnesses/apollo/skills/design/data/voices/bright-collaborator.md +0 -29
  157. package/data/harnesses/apollo/skills/design/data/voices/direct-operator.md +0 -29
  158. package/data/harnesses/apollo/skills/design/data/voices/earnest-helper.md +0 -29
  159. package/data/harnesses/apollo/skills/design/data/voices/editorial-composed.md +0 -29
  160. package/data/harnesses/apollo/skills/design/data/voices/quiet-concierge.md +0 -29
  161. package/data/harnesses/apollo/skills/design/data/voices/warm-guide.md +0 -29
  162. package/data/harnesses/apollo/skills/design/design-md/SCHEMA.md +0 -179
  163. package/data/harnesses/apollo/skills/design/design-md/index.csv +0 -67
  164. package/data/harnesses/apollo/skills/design/design-md/library/airbnb.md +0 -207
  165. package/data/harnesses/apollo/skills/design/design-md/library/airtable.md +0 -205
  166. package/data/harnesses/apollo/skills/design/design-md/library/anthropic-claude.md +0 -203
  167. package/data/harnesses/apollo/skills/design/design-md/library/apple.md +0 -206
  168. package/data/harnesses/apollo/skills/design/design-md/library/binance.md +0 -210
  169. package/data/harnesses/apollo/skills/design/design-md/library/bmw.md +0 -210
  170. package/data/harnesses/apollo/skills/design/design-md/library/cal.md +0 -209
  171. package/data/harnesses/apollo/skills/design/design-md/library/clay.md +0 -204
  172. package/data/harnesses/apollo/skills/design/design-md/library/clickhouse.md +0 -205
  173. package/data/harnesses/apollo/skills/design/design-md/library/cohere.md +0 -205
  174. package/data/harnesses/apollo/skills/design/design-md/library/coinbase.md +0 -198
  175. package/data/harnesses/apollo/skills/design/design-md/library/composio.md +0 -198
  176. package/data/harnesses/apollo/skills/design/design-md/library/cursor.md +0 -197
  177. package/data/harnesses/apollo/skills/design/design-md/library/elevenlabs.md +0 -199
  178. package/data/harnesses/apollo/skills/design/design-md/library/expo.md +0 -200
  179. package/data/harnesses/apollo/skills/design/design-md/library/figma.md +0 -199
  180. package/data/harnesses/apollo/skills/design/design-md/library/framer.md +0 -202
  181. package/data/harnesses/apollo/skills/design/design-md/library/hashicorp.md +0 -205
  182. package/data/harnesses/apollo/skills/design/design-md/library/ibm.md +0 -205
  183. package/data/harnesses/apollo/skills/design/design-md/library/intercom.md +0 -204
  184. package/data/harnesses/apollo/skills/design/design-md/library/kraken.md +0 -200
  185. package/data/harnesses/apollo/skills/design/design-md/library/linear-app.md +0 -198
  186. package/data/harnesses/apollo/skills/design/design-md/library/lovable.md +0 -199
  187. package/data/harnesses/apollo/skills/design/design-md/library/meta.md +0 -204
  188. package/data/harnesses/apollo/skills/design/design-md/library/minimax.md +0 -204
  189. package/data/harnesses/apollo/skills/design/design-md/library/mintlify.md +0 -210
  190. package/data/harnesses/apollo/skills/design/design-md/library/miro.md +0 -209
  191. package/data/harnesses/apollo/skills/design/design-md/library/mistral-ai.md +0 -201
  192. package/data/harnesses/apollo/skills/design/design-md/library/mongodb.md +0 -201
  193. package/data/harnesses/apollo/skills/design/design-md/library/notion.md +0 -204
  194. package/data/harnesses/apollo/skills/design/design-md/library/nvidia.md +0 -215
  195. package/data/harnesses/apollo/skills/design/design-md/library/ollama.md +0 -213
  196. package/data/harnesses/apollo/skills/design/design-md/library/opencode-ai.md +0 -216
  197. package/data/harnesses/apollo/skills/design/design-md/library/posthog.md +0 -218
  198. package/data/harnesses/apollo/skills/design/design-md/library/raycast.md +0 -214
  199. package/data/harnesses/apollo/skills/design/design-md/library/replicate.md +0 -202
  200. package/data/harnesses/apollo/skills/design/design-md/library/resend.md +0 -203
  201. package/data/harnesses/apollo/skills/design/design-md/library/revolut.md +0 -203
  202. package/data/harnesses/apollo/skills/design/design-md/library/runwayml.md +0 -203
  203. package/data/harnesses/apollo/skills/design/design-md/library/sanity.md +0 -200
  204. package/data/harnesses/apollo/skills/design/design-md/library/sentry.md +0 -201
  205. package/data/harnesses/apollo/skills/design/design-md/library/shopify.md +0 -202
  206. package/data/harnesses/apollo/skills/design/design-md/library/slack.md +0 -202
  207. package/data/harnesses/apollo/skills/design/design-md/library/spacex.md +0 -206
  208. package/data/harnesses/apollo/skills/design/design-md/library/spotify.md +0 -206
  209. package/data/harnesses/apollo/skills/design/design-md/library/stripe.md +0 -196
  210. package/data/harnesses/apollo/skills/design/design-md/library/supabase.md +0 -196
  211. package/data/harnesses/apollo/skills/design/design-md/library/superhuman.md +0 -194
  212. package/data/harnesses/apollo/skills/design/design-md/library/tesla.md +0 -198
  213. package/data/harnesses/apollo/skills/design/design-md/library/theverge.md +0 -199
  214. package/data/harnesses/apollo/skills/design/design-md/library/together-ai.md +0 -193
  215. package/data/harnesses/apollo/skills/design/design-md/library/uber.md +0 -195
  216. package/data/harnesses/apollo/skills/design/design-md/library/vercel.md +0 -195
  217. package/data/harnesses/apollo/skills/design/design-md/library/voltagent.md +0 -197
  218. package/data/harnesses/apollo/skills/design/design-md/library/warp.md +0 -196
  219. package/data/harnesses/apollo/skills/design/design-md/library/webflow.md +0 -197
  220. package/data/harnesses/apollo/skills/design/design-md/library/wired.md +0 -197
  221. package/data/harnesses/apollo/skills/design/design-md/library/wise.md +0 -198
  222. package/data/harnesses/apollo/skills/design/design-md/library/x-ai.md +0 -199
  223. package/data/harnesses/apollo/skills/design/design-md/library/zapier.md +0 -198
  224. package/data/harnesses/apollo/skills/design/design-md/nurix.md +0 -214
  225. package/data/harnesses/apollo/skills/design/design-md/variants/editorial-luxury.md +0 -184
  226. package/data/harnesses/apollo/skills/design/design-md/variants/expressive-saas.md +0 -216
  227. package/data/harnesses/apollo/skills/design/design-md/variants/quiet-premium.md +0 -211
  228. package/data/harnesses/apollo/skills/design/design-md/variants/terse-dense-operator.md +0 -212
  229. package/data/harnesses/apollo/skills/design/design-md/variants/warm-approachable.md +0 -216
  230. package/data/harnesses/code/skills/design/data/blueprints/browse.md +0 -38
  231. package/data/harnesses/code/skills/design/data/blueprints/creation-flow.md +0 -38
  232. package/data/harnesses/code/skills/design/data/blueprints/dashboard.md +0 -38
  233. package/data/harnesses/code/skills/design/data/blueprints/grid.md +0 -38
  234. package/data/harnesses/code/skills/design/data/blueprints/queue.md +0 -38
  235. package/data/harnesses/code/skills/design/data/blueprints/record-detail.md +0 -38
  236. package/data/harnesses/code/skills/design/data/blueprints/settings.md +0 -38
  237. package/data/harnesses/code/skills/design/data/chart-styling/Readme.md +0 -33
  238. package/data/harnesses/code/skills/design/data/chart-styling/carbon-accessible-alert-semantic.md +0 -19
  239. package/data/harnesses/code/skills/design/data/chart-styling/carbon-monochrome-sequential-trend.md +0 -19
  240. package/data/harnesses/code/skills/design/data/chart-styling/datadog-classic-six-aligned.md +0 -19
  241. package/data/harnesses/code/skills/design/data/chart-styling/datawrapper-tiered-gray-hierarchy.md +0 -19
  242. package/data/harnesses/code/skills/design/data/chart-styling/econ-red-rule-horizontal.md +0 -19
  243. package/data/harnesses/code/skills/design/data/chart-styling/financial-diverging-threshold-overlay.md +0 -19
  244. package/data/harnesses/code/skills/design/data/chart-styling/ft-vocabulary-ranked-muted.md +0 -19
  245. package/data/harnesses/code/skills/design/data/chart-styling/grafana-dark-threshold-bands.md +0 -19
  246. package/data/harnesses/code/skills/design/data/chart-styling/material-rounded-explicit-label.md +0 -19
  247. package/data/harnesses/code/skills/design/data/chart-styling/nyt-ghost-grid-direct-label.md +0 -19
  248. package/data/harnesses/code/skills/design/data/chart-styling/plot-currentcolor-inherit.md +0 -19
  249. package/data/harnesses/code/skills/design/data/chart-styling/saas-gradient-glow-area.md +0 -19
  250. package/data/harnesses/code/skills/design/data/chart-styling/shadcn-composable-css-vars.md +0 -19
  251. package/data/harnesses/code/skills/design/data/charts/census.csv +0 -58
  252. package/data/harnesses/code/skills/design/data/checklists/browse.md +0 -21
  253. package/data/harnesses/code/skills/design/data/checklists/creation-flow.md +0 -20
  254. package/data/harnesses/code/skills/design/data/checklists/dashboard.md +0 -21
  255. package/data/harnesses/code/skills/design/data/checklists/grid.md +0 -21
  256. package/data/harnesses/code/skills/design/data/checklists/queue.md +0 -21
  257. package/data/harnesses/code/skills/design/data/checklists/record-detail.md +0 -21
  258. package/data/harnesses/code/skills/design/data/checklists/settings.md +0 -21
  259. package/data/harnesses/code/skills/design/data/chrome/board-column.md +0 -68
  260. package/data/harnesses/code/skills/design/data/chrome/data-table.md +0 -63
  261. package/data/harnesses/code/skills/design/data/chrome/side-panel.md +0 -60
  262. package/data/harnesses/code/skills/design/data/chrome/sidebar.md +0 -78
  263. package/data/harnesses/code/skills/design/data/chrome/stat-cards.md +0 -62
  264. package/data/harnesses/code/skills/design/data/chrome/topbar.md +0 -65
  265. package/data/harnesses/code/skills/design/data/color/accent-presets.md +0 -90
  266. package/data/harnesses/code/skills/design/data/color/aesop-earth-mute.md +0 -91
  267. package/data/harnesses/code/skills/design/data/color/arc-peach-play.md +0 -90
  268. package/data/harnesses/code/skills/design/data/color/attio-hunter-teal.md +0 -90
  269. package/data/harnesses/code/skills/design/data/color/carbon-cyan-signal.md +0 -90
  270. package/data/harnesses/code/skills/design/data/color/clay-parchment.md +0 -90
  271. package/data/harnesses/code/skills/design/data/color/duolingo-feather.md +0 -90
  272. package/data/harnesses/code/skills/design/data/color/geist-mono-signal.md +0 -90
  273. package/data/harnesses/code/skills/design/data/color/linear-graphite-violet.md +0 -90
  274. package/data/harnesses/code/skills/design/data/color/mercury-onyx-cobalt.md +0 -90
  275. package/data/harnesses/code/skills/design/data/color/notion-paper-ink.md +0 -90
  276. package/data/harnesses/code/skills/design/data/color/radix-slate-iris.md +0 -90
  277. package/data/harnesses/code/skills/design/data/color/raycast-void-spectrum.md +0 -90
  278. package/data/harnesses/code/skills/design/data/color/spectrum-celery-fuchsia.md +0 -90
  279. package/data/harnesses/code/skills/design/data/color/stripe-blurple-ruby.md +0 -90
  280. package/data/harnesses/code/skills/design/data/color/superhuman-cod-picton.md +0 -89
  281. package/data/harnesses/code/skills/design/data/corpora/operations-review/companies.csv +0 -15
  282. package/data/harnesses/code/skills/design/data/corpora/operations-review/corpus.md +0 -87
  283. package/data/harnesses/code/skills/design/data/corpora/operations-review/people.csv +0 -25
  284. package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/companies.csv +0 -15
  285. package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/corpus.md +0 -83
  286. package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/people.csv +0 -25
  287. package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/companies.csv +0 -15
  288. package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/corpus.md +0 -89
  289. package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/people.csv +0 -25
  290. package/data/harnesses/code/skills/design/data/elevation/ant-design-directional-shadow.md +0 -19
  291. package/data/harnesses/code/skills/design/data/elevation/apple-liquid-glass-material.md +0 -18
  292. package/data/harnesses/code/skills/design/data/elevation/atlassian-surface-shadow-pairing.md +0 -20
  293. package/data/harnesses/code/skills/design/data/elevation/fluent-2-key-ambient-ramp.md +0 -20
  294. package/data/harnesses/code/skills/design/data/elevation/github-primer-sparing-shadow.md +0 -19
  295. package/data/harnesses/code/skills/design/data/elevation/ibm-carbon-layer-and-border.md +0 -19
  296. package/data/harnesses/code/skills/design/data/elevation/linear-dark-surface-ladder.md +0 -17
  297. package/data/harnesses/code/skills/design/data/elevation/material-2-key-ambient-dp-ramp.md +0 -19
  298. package/data/harnesses/code/skills/design/data/elevation/material-3-tonal-elevation.md +0 -21
  299. package/data/harnesses/code/skills/design/data/elevation/neobrutalist-hard-offset.md +0 -19
  300. package/data/harnesses/code/skills/design/data/elevation/neumorphic-soft-dual-shadow.md +0 -18
  301. package/data/harnesses/code/skills/design/data/elevation/notion-warm-minimal-hairline.md +0 -17
  302. package/data/harnesses/code/skills/design/data/elevation/polaris-elevation-inset-bevel.md +0 -21
  303. package/data/harnesses/code/skills/design/data/elevation/radix-themes-alpha-ring-scale.md +0 -19
  304. package/data/harnesses/code/skills/design/data/elevation/shadcn-neutral-derived-radius.md +0 -19
  305. package/data/harnesses/code/skills/design/data/elevation/stripe-brand-tinted-dual-shadow.md +0 -18
  306. package/data/harnesses/code/skills/design/data/elevation/tailwind-default-utility-scale.md +0 -19
  307. package/data/harnesses/code/skills/design/data/elevation/vercel-geist-shadow-as-border.md +0 -20
  308. package/data/harnesses/code/skills/design/data/gradients/amber-attention-fill.md +0 -16
  309. package/data/harnesses/code/skills/design/data/gradients/cloud-shadow-wash.md +0 -16
  310. package/data/harnesses/code/skills/design/data/gradients/confident-lavender-wash.md +0 -16
  311. package/data/harnesses/code/skills/design/data/gradients/ember-ship-flare.md +0 -18
  312. package/data/harnesses/code/skills/design/data/gradients/full-metal-wash.md +0 -16
  313. package/data/harnesses/code/skills/design/data/gradients/indigo-ruby-cta-band.md +0 -18
  314. package/data/harnesses/code/skills/design/data/gradients/linear-graphite-wash.md +0 -18
  315. package/data/harnesses/code/skills/design/data/gradients/marble-quartz-wash.md +0 -16
  316. package/data/harnesses/code/skills/design/data/gradients/midnight-aurora-panel.md +0 -16
  317. package/data/harnesses/code/skills/design/data/gradients/neutral-volume-fill.md +0 -16
  318. package/data/harnesses/code/skills/design/data/gradients/revenue-uptrend-fill.md +0 -16
  319. package/data/harnesses/code/skills/design/data/gradients/risk-decline-fill.md +0 -16
  320. package/data/harnesses/code/skills/design/data/gradients/signal-blue-develop.md +0 -18
  321. package/data/harnesses/code/skills/design/data/gradients/slate-mist-wash.md +0 -16
  322. package/data/harnesses/code/skills/design/data/gradients/stripe-atmosphere-mesh.md +0 -18
  323. package/data/harnesses/code/skills/design/data/gradients/teal-signal-accent.md +0 -16
  324. package/data/harnesses/code/skills/design/data/gradients/violet-magenta-promo.md +0 -16
  325. package/data/harnesses/code/skills/design/data/iconography.md +0 -199
  326. package/data/harnesses/code/skills/design/data/motion/accordion-expand.md +0 -18
  327. package/data/harnesses/code/skills/design/data/motion/destructive-hold-confirm.md +0 -18
  328. package/data/harnesses/code/skills/design/data/motion/drag-dismiss-momentum.md +0 -18
  329. package/data/harnesses/code/skills/design/data/motion/empty-state-arrive.md +0 -18
  330. package/data/harnesses/code/skills/design/data/motion/hover-lift.md +0 -18
  331. package/data/harnesses/code/skills/design/data/motion/modal-center-arrive.md +0 -18
  332. package/data/harnesses/code/skills/design/data/motion/number-ticker-roll.md +0 -18
  333. package/data/harnesses/code/skills/design/data/motion/onboarding-bounce.md +0 -18
  334. package/data/harnesses/code/skills/design/data/motion/panel-slide.md +0 -18
  335. package/data/harnesses/code/skills/design/data/motion/press-feedback.md +0 -18
  336. package/data/harnesses/code/skills/design/data/motion/progress-linear-loop.md +0 -18
  337. package/data/harnesses/code/skills/design/data/motion/route-crossfade.md +0 -18
  338. package/data/harnesses/code/skills/design/data/motion/rubber-band-overscroll.md +0 -18
  339. package/data/harnesses/code/skills/design/data/motion/skeleton-shimmer.md +0 -18
  340. package/data/harnesses/code/skills/design/data/motion/stagger-arrive.md +0 -18
  341. package/data/harnesses/code/skills/design/data/motion/toast-enter-stack.md +0 -18
  342. package/data/harnesses/code/skills/design/data/motion/tooltip-chain-instant.md +0 -18
  343. package/data/harnesses/code/skills/design/data/motion/trigger-anchored-reveal.md +0 -18
  344. package/data/harnesses/code/skills/design/data/tells.csv +0 -34
  345. package/data/harnesses/code/skills/design/data/typography/anton-work-sans.md +0 -17
  346. package/data/harnesses/code/skills/design/data/typography/archivo-black-archivo.md +0 -17
  347. package/data/harnesses/code/skills/design/data/typography/bitter-karla.md +0 -17
  348. package/data/harnesses/code/skills/design/data/typography/dm-serif-dm-sans.md +0 -17
  349. package/data/harnesses/code/skills/design/data/typography/fraunces-inter.md +0 -17
  350. package/data/harnesses/code/skills/design/data/typography/geist-geist-mono.md +0 -17
  351. package/data/harnesses/code/skills/design/data/typography/hubot-sans-mona-sans.md +0 -17
  352. package/data/harnesses/code/skills/design/data/typography/ibm-plex-sans-operator-single-family.md +0 -17
  353. package/data/harnesses/code/skills/design/data/typography/instrument-serif-instrument-sans.md +0 -17
  354. package/data/harnesses/code/skills/design/data/typography/inter-operator-single-family.md +0 -17
  355. package/data/harnesses/code/skills/design/data/typography/libre-baskerville-libre-franklin.md +0 -17
  356. package/data/harnesses/code/skills/design/data/typography/newsreader-inter.md +0 -17
  357. package/data/harnesses/code/skills/design/data/typography/playfair-display-source-sans.md +0 -17
  358. package/data/harnesses/code/skills/design/data/typography/public-sans-operator-single-family.md +0 -17
  359. package/data/harnesses/code/skills/design/data/typography/sohne-inter-fintech.md +0 -17
  360. package/data/harnesses/code/skills/design/data/typography/source-serif-source-sans.md +0 -17
  361. package/data/harnesses/code/skills/design/data/typography/space-grotesk-work-sans-space-mono.md +0 -17
  362. package/data/harnesses/code/skills/design/data/typography/spectral-manrope.md +0 -17
  363. package/data/harnesses/code/skills/design/data/voices/bright-collaborator.md +0 -29
  364. package/data/harnesses/code/skills/design/data/voices/direct-operator.md +0 -29
  365. package/data/harnesses/code/skills/design/data/voices/earnest-helper.md +0 -29
  366. package/data/harnesses/code/skills/design/data/voices/editorial-composed.md +0 -29
  367. package/data/harnesses/code/skills/design/data/voices/quiet-concierge.md +0 -29
  368. package/data/harnesses/code/skills/design/data/voices/warm-guide.md +0 -29
  369. package/data/harnesses/code/skills/design/design-md/SCHEMA.md +0 -179
  370. package/data/harnesses/code/skills/design/design-md/index.csv +0 -67
  371. package/data/harnesses/code/skills/design/design-md/library/airbnb.md +0 -207
  372. package/data/harnesses/code/skills/design/design-md/library/airtable.md +0 -205
  373. package/data/harnesses/code/skills/design/design-md/library/anthropic-claude.md +0 -203
  374. package/data/harnesses/code/skills/design/design-md/library/apple.md +0 -206
  375. package/data/harnesses/code/skills/design/design-md/library/binance.md +0 -210
  376. package/data/harnesses/code/skills/design/design-md/library/bmw.md +0 -210
  377. package/data/harnesses/code/skills/design/design-md/library/cal.md +0 -209
  378. package/data/harnesses/code/skills/design/design-md/library/clay.md +0 -204
  379. package/data/harnesses/code/skills/design/design-md/library/clickhouse.md +0 -205
  380. package/data/harnesses/code/skills/design/design-md/library/cohere.md +0 -205
  381. package/data/harnesses/code/skills/design/design-md/library/coinbase.md +0 -198
  382. package/data/harnesses/code/skills/design/design-md/library/composio.md +0 -198
  383. package/data/harnesses/code/skills/design/design-md/library/cursor.md +0 -197
  384. package/data/harnesses/code/skills/design/design-md/library/elevenlabs.md +0 -199
  385. package/data/harnesses/code/skills/design/design-md/library/expo.md +0 -200
  386. package/data/harnesses/code/skills/design/design-md/library/figma.md +0 -199
  387. package/data/harnesses/code/skills/design/design-md/library/framer.md +0 -202
  388. package/data/harnesses/code/skills/design/design-md/library/hashicorp.md +0 -205
  389. package/data/harnesses/code/skills/design/design-md/library/ibm.md +0 -205
  390. package/data/harnesses/code/skills/design/design-md/library/intercom.md +0 -204
  391. package/data/harnesses/code/skills/design/design-md/library/kraken.md +0 -200
  392. package/data/harnesses/code/skills/design/design-md/library/linear-app.md +0 -198
  393. package/data/harnesses/code/skills/design/design-md/library/lovable.md +0 -199
  394. package/data/harnesses/code/skills/design/design-md/library/meta.md +0 -204
  395. package/data/harnesses/code/skills/design/design-md/library/minimax.md +0 -204
  396. package/data/harnesses/code/skills/design/design-md/library/mintlify.md +0 -210
  397. package/data/harnesses/code/skills/design/design-md/library/miro.md +0 -209
  398. package/data/harnesses/code/skills/design/design-md/library/mistral-ai.md +0 -201
  399. package/data/harnesses/code/skills/design/design-md/library/mongodb.md +0 -201
  400. package/data/harnesses/code/skills/design/design-md/library/notion.md +0 -204
  401. package/data/harnesses/code/skills/design/design-md/library/nvidia.md +0 -215
  402. package/data/harnesses/code/skills/design/design-md/library/ollama.md +0 -213
  403. package/data/harnesses/code/skills/design/design-md/library/opencode-ai.md +0 -216
  404. package/data/harnesses/code/skills/design/design-md/library/posthog.md +0 -218
  405. package/data/harnesses/code/skills/design/design-md/library/raycast.md +0 -214
  406. package/data/harnesses/code/skills/design/design-md/library/replicate.md +0 -202
  407. package/data/harnesses/code/skills/design/design-md/library/resend.md +0 -203
  408. package/data/harnesses/code/skills/design/design-md/library/revolut.md +0 -203
  409. package/data/harnesses/code/skills/design/design-md/library/runwayml.md +0 -203
  410. package/data/harnesses/code/skills/design/design-md/library/sanity.md +0 -200
  411. package/data/harnesses/code/skills/design/design-md/library/sentry.md +0 -201
  412. package/data/harnesses/code/skills/design/design-md/library/shopify.md +0 -202
  413. package/data/harnesses/code/skills/design/design-md/library/slack.md +0 -202
  414. package/data/harnesses/code/skills/design/design-md/library/spacex.md +0 -206
  415. package/data/harnesses/code/skills/design/design-md/library/spotify.md +0 -206
  416. package/data/harnesses/code/skills/design/design-md/library/stripe.md +0 -196
  417. package/data/harnesses/code/skills/design/design-md/library/supabase.md +0 -196
  418. package/data/harnesses/code/skills/design/design-md/library/superhuman.md +0 -194
  419. package/data/harnesses/code/skills/design/design-md/library/tesla.md +0 -198
  420. package/data/harnesses/code/skills/design/design-md/library/theverge.md +0 -199
  421. package/data/harnesses/code/skills/design/design-md/library/together-ai.md +0 -193
  422. package/data/harnesses/code/skills/design/design-md/library/uber.md +0 -195
  423. package/data/harnesses/code/skills/design/design-md/library/vercel.md +0 -195
  424. package/data/harnesses/code/skills/design/design-md/library/voltagent.md +0 -197
  425. package/data/harnesses/code/skills/design/design-md/library/warp.md +0 -196
  426. package/data/harnesses/code/skills/design/design-md/library/webflow.md +0 -197
  427. package/data/harnesses/code/skills/design/design-md/library/wired.md +0 -197
  428. package/data/harnesses/code/skills/design/design-md/library/wise.md +0 -198
  429. package/data/harnesses/code/skills/design/design-md/library/x-ai.md +0 -199
  430. package/data/harnesses/code/skills/design/design-md/library/zapier.md +0 -198
  431. package/data/harnesses/code/skills/design/design-md/nurix.md +0 -214
  432. package/data/harnesses/code/skills/design/design-md/variants/editorial-luxury.md +0 -184
  433. package/data/harnesses/code/skills/design/design-md/variants/expressive-saas.md +0 -216
  434. package/data/harnesses/code/skills/design/design-md/variants/quiet-premium.md +0 -211
  435. package/data/harnesses/code/skills/design/design-md/variants/terse-dense-operator.md +0 -212
  436. package/data/harnesses/code/skills/design/design-md/variants/warm-approachable.md +0 -216
@@ -1,38 +0,0 @@
1
- ---
2
- id: record-detail
3
- class: d3
4
- sourced: 2026-07-12
5
- source: "design-skill-phase1 D3 sweep — distilled from Salesforce Lightning record pages, HubSpot record layout, Stripe customer detail, GitHub pull-request Files changed, Datadog Service Page"
6
- license: open
7
- ---
8
- Composition shapes for the record-detail archetype — one entity, its fields, its history, and its relationships on a single page.
9
-
10
- ## Shape: Highlights + Related Tabs
11
- Regions: highlights band (top, full-width, up to ~7 key fields drawn from a compact layout) / horizontal tab strip (below highlights) switching between Related, Details, and Activity panels beneath.
12
- The eye lands on: the first field in the highlights band (typically the record's name/status).
13
- When to use: one record has many categories of related information that don't need to be visible simultaneously.
14
- Seen in: Salesforce Lightning record pages (highlights panel driven by compact layout + related-list cards).
15
-
16
- ## Shape: Three-Column CRM Record
17
- Regions: property sidebar (left, ~25%, "About" fields) / activity timeline (center, ~50%, chronological log) / associated-records rail (right, ~25%, previews of linked deals/tickets/companies).
18
- The eye lands on: the most recent entry at the top of the center timeline.
19
- When to use: the record's story (what happened, in order) matters as much as its current field values or its relationships.
20
- Seen in: HubSpot's contact/company/deal record layout.
21
-
22
- ## Shape: Hero Header + Tab Strip
23
- Regions: hero header (top, full-width, entity name plus top-line stats) / horizontal tab strip immediately below (Payments / Subscriptions / Invoices / Events) / one table per tab filling the rest of the page.
24
- The eye lands on: the top-line stat in the hero header (balance, lifetime value, status).
25
- When to use: one entity has several large, independently-scrollable tables of history that shouldn't compete for space at once.
26
- Seen in: Stripe's customer detail page.
27
-
28
- ## Shape: Conversation + Docked Panels
29
- Regions: resizable file/change tree (left, collapsible) / conversation or diff thread (center, dominant, scrolls independently) / docked overview and comments panels (right, toggled on demand, don't require navigating away).
30
- The eye lands on: the active file or comment thread being discussed in the center pane.
31
- When to use: reviewing a change requires holding structure (what changed), discussion (what people said), and description (why) in view together.
32
- Seen in: GitHub's redesigned pull request "Files changed" page.
33
-
34
- ## Shape: Dependency-Map Record
35
- Regions: relationship graph/map (left or center, dominant canvas showing the entity's upstream/downstream connections) / metrics table (docked right or bottom, request/error/latency figures per connection).
36
- The eye lands on: the node representing the record itself, at the center of its dependency graph.
37
- When to use: the entity's identity is defined by its relationships to other entities, and those relationships are the diagnostic surface.
38
- Seen in: Datadog's Service Page (dependency map paired with a request/error-rate/latency table).
@@ -1,38 +0,0 @@
1
- ---
2
- id: settings
3
- class: d3
4
- sourced: 2026-07-12
5
- source: "design-skill-phase1 D3 sweep — distilled from GitHub repository settings, Slack admin console, Stripe Dashboard settings, Salesforce Setup Quick Find, common SaaS account-settings patterns"
6
- license: open
7
- ---
8
- Composition shapes for the settings archetype — configuration surfaces organized by scope, subject, and risk. The size and depth of the settings surface picks the shape.
9
-
10
- ## Shape: Left Category Nav + Detail Pane
11
- Regions: left navigation (fixed width, expandable category tree) / detail pane (remaining width, shows the form or table for the selected category only).
12
- The eye lands on: the highlighted item in the left nav, then the pane's section heading.
13
- When to use: settings span many unrelated categories that users navigate between rather than read straight through.
14
- Seen in: GitHub repository settings, Slack's admin console left-nav category tree.
15
-
16
- ## Shape: Top Tab Strip Sections
17
- Regions: horizontal tab strip (top, full-width, a handful of top-level categories) / one scrollable panel per tab filling the rest of the page.
18
- The eye lands on: the active tab label.
19
- When to use: the number of top-level categories is small enough to stay visible at once without a side nav's real estate cost.
20
- Seen in: Stripe Dashboard settings, split into Personal / Account / Product tabs.
21
-
22
- ## Shape: Search-Driven Settings
23
- Regions: a quick-find search box (top, prominent) over an otherwise large, unbrowsed index of setting pages / results filter the index live as the user types.
24
- The eye lands on: the search box itself before any content.
25
- When to use: the settings surface is too large or too deep to browse by category reliably, and users usually know the setting's name.
26
- Seen in: Salesforce's Setup home with Quick Find search over the full Setup/Object Manager index.
27
-
28
- ## Shape: Long Scrolling Anchored Page
29
- Regions: a single continuous page (full-width, no separate nav pane or tabs) with settings grouped into vertically stacked sections / optional anchor links jump to a section.
30
- The eye lands on: whichever section heading is nearest the top of the current scroll position.
31
- When to use: the total settings surface is modest enough that scrolling beats clicking between categories.
32
- Seen in: common single-page "Account settings" patterns across SaaS admin surfaces (the pattern GitHub and Stripe both fall back to for smaller settings areas nested inside their larger nav/tab shells).
33
-
34
- ## Shape: Master-Detail Settings List
35
- Regions: a table of configuration records (full-width or left-majority — API keys, webhooks, members, roles) with an "add" action above it / clicking a row opens that record's own edit form, inline or in a panel.
36
- The eye lands on: the most recently created or most active row in the table.
37
- When to use: the "setting" is really a collection of independent records (keys, integrations, members) rather than a single configuration object.
38
- Seen in: Stripe's API keys and webhooks pages, GitHub's collaborators and webhooks settings pages.
@@ -1,33 +0,0 @@
1
- ---
2
- id: chart-styling-conventions
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from the A7 Phase-1 chart-styling sweep's cross-cutting tells (docs/research/design-skill-phase1/a7-chart-styling.md) — Datawrapper's gray-hierarchy and confetti-spaghetti posts, NYT/Economist chrome-restraint practice"
6
- license: open
7
- feel: "quiet chrome, loud data — the axis never competes with the series it's measuring"
8
- ---
9
- Landing page for the A7 chart-styling database — one entry per named chrome + ramp recipe under `data/chart-styling/<id>.md`. Every entry specs axis/gridline/tooltip/legend chrome plus the three data ramps (categorical, sequential, diverging), and **every value is a token-role reference** (`chart-1`…`chart-5`, `muted`, `muted-foreground`, `border`, `surface-overlay`, `surface-raised`, `card`, `popover`, `success`, `destructive`, `warning`, `foreground`) — an entry never carries a color literal. The active identity package resolves the actual OKLCH/hex values; these recipes only say which role plays which chrome or ramp job. Chart *form* selection (bar vs. line vs. scatter) is a separate decision layer (B1) upstream of this one — A7 is styling only.
10
-
11
- ## Cross-cutting tells (apply across every recipe below)
12
-
13
- - **Rainbow categorical soup** — too many saturated hues in one legend reads as "confetti spaghetti" (Datawrapper's term). Prefer running a family of related series in shades of two or three hues over reaching for a fifth or sixth chart token.
14
- - **Heavy black axes** — keep axis lines thin-to-absent; let the gridline (or the label alone) carry structure instead of a bold ruled line.
15
- - **Gridlines darker than data** — the three-tier gray hierarchy is a hard rule, not a preference: gridline contrast < label contrast < title contrast, always. A gridline that out-contrasts a data stroke has failed — lighten the gridline token, never darken the data.
16
-
17
- ## Index
18
-
19
- | id | register | when to use |
20
- | --- | --- | --- |
21
- | `econ-red-rule-horizontal` | editorial, print/slide | single-message hero charts, one accent rule, everything else recedes |
22
- | `nyt-ghost-grid-direct-label` | editorial, narrative | line/area charts where the series shape is the story; direct end-of-line labels |
23
- | `ft-vocabulary-ranked-muted` | editorial/financial | a family of related chart types in one story needing shared chrome |
24
- | `plot-currentcolor-inherit` | embedded/inline | charts dropped into prose or docs, inheriting the page's ink color |
25
- | `datawrapper-tiered-gray-hierarchy` | editorial default | general-purpose; the three-gray-tier ordering rule |
26
- | `grafana-dark-threshold-bands` | ops/monitoring | dark-first always-on dashboards; threshold bands carry the alert signal |
27
- | `datadog-classic-six-aligned` | ops/monitoring | multi-panel monitoring grids needing consistent series identity |
28
- | `carbon-accessible-alert-semantic` | enterprise/accessibility | dense dashboards under a WCAG contrast mandate |
29
- | `carbon-monochrome-sequential-trend` | analytics | single-metric trend/heatmap charts, one hue's lightness ramp |
30
- | `shadcn-composable-css-vars` | product analytics | modern Recharts-via-shadcn UI, chart-N vars feed chrome directly |
31
- | `material-rounded-explicit-label` | consumer analytics | Material-flavored product, never color-alone encoding |
32
- | `saas-gradient-glow-area` | growth/marketing | usage charts, upgrade nudges — warmth over analytical density |
33
- | `financial-diverging-threshold-overlay` | finance/ops | P&L, budget-vs-actual, SLA burn-down — zero-baseline deviation reads |
@@ -1,19 +0,0 @@
1
- ---
2
- id: carbon-accessible-alert-semantic
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Carbon Design System's data-visualization color-palettes page and its accessibility Medium write-up — WCAG 3.5:1 categorical contrast, fixed alert semantics"
6
- license: open
7
- feel: "WCAG-contrast categorical rotation plus fixed alert semantics — red/orange/yellow/green always mean the same severity"
8
- ---
9
- Use for dense enterprise dashboards under an accessibility mandate. The categorical sequence is curated for maximum contrast between *neighbors*, not picked for hue variety — and alert colors are never repurposed for plain categorical use. Avoid a gradient standing in for a sequential ramp; use the dedicated sequential pair instead.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 11px, WCAG AA contrast minimum", ticks: minimal }
13
- gridlines: { direction: both, stroke: border, style: solid }
14
- tooltip: { surface: card, numerals: sans, border: border }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: surface-raised, to: chart-1 }
18
- diverging: { negative: destructive, mid: muted, positive: success }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: carbon-monochrome-sequential-trend
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Carbon Design System's monochromatic-palette guidance for relationship/trend charts"
6
- license: open
7
- feel: "single-hue lightness ramp for one series over time — depth of one color doing the work, no categorical distraction"
8
- ---
9
- Use for single-metric trend charts, heatmap cells, or relationship charts where only magnitude matters. Avoid introducing a second hue even for a comparison band — step lightness/opacity of the same chart token instead of reaching for chart-2. Primarily a sequential recipe; the diverging slot below is rarely invoked in practice.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 10px sans", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: card, numerals: mono, border: border }
15
- legend: { position: none, style: swatch }
16
- categorical: [chart-1, muted, muted, muted, muted]
17
- sequential: { from: surface-raised, to: chart-1 }
18
- diverging: { negative: muted, mid: border, positive: chart-1 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: datadog-classic-six-aligned
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Datadog's 'Selecting the right colors for your graphs' doc and effective-dashboards guidelines — Classic 6-color rotation, aligned x-axes"
6
- license: open
7
- feel: "six-color classic rotation with x-axes locked across every panel — the legend shows up only when there's room"
8
- ---
9
- Use for multi-panel monitoring grids where series identity must stay recognizable panel-to-panel. Keep a fixed categorical count before repeating (Datadog's own is 6; an identity package with 5 chart tokens should cycle back to chart-1 for the 6th series, not introduce a 6th ad hoc hue). Never let one panel show a legend while its row neighbor hides one — it breaks x-axis alignment.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 9-10px, aligned across all panels in a row", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: popover, numerals: mono, border: border }
15
- legend: { position: right, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: muted, to: chart-2 }
18
- diverging: { negative: chart-4, mid: muted, positive: chart-3 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: datawrapper-tiered-gray-hierarchy
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Datawrapper Academy's chart-customization articles and its 'colors for data vis style guides' post — the three-gray-tier rule"
6
- license: open
7
- feel: "three deliberate grays — gridline lightest, label mid, title darkest — hierarchy reads before you even look at the data"
8
- ---
9
- General-purpose editorial default. The reusable insight is the *order*, not any single value: gridline contrast < label contrast < title contrast, always. Hard rule baked in — a gridline must never out-contrast a data stroke; if it does, lighten the gridline token, don't darken the data.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 10px sans, mid gray tier", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: card, numerals: sans, border: border }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: surface-raised, to: chart-1 }
18
- diverging: { negative: chart-4, mid: muted, positive: chart-2 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: econ-red-rule-horizontal
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from The Economist's chart style guide PDF (v1.2) and Fountn's summary — horizontal-only gridlines, right-side labels, top accent rule"
6
- license: open
7
- feel: "one loud accent rule over quiet gray charts — one chart, one message, everything else recedes"
8
- ---
9
- Use for single-message editorial charts (reports, decks, one-pagers) where a single series or moment must land instantly. Light theme, low density, print/slide scale — the top rule is a masthead device, not a repeatable UI motif, so reserve it for hero charts, not dashboard grids.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 11px right-aligned y-axis, no vertical axis line drawn", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: card, numerals: sans, border: none }
15
- legend: { position: inline, style: line }
16
- categorical: [chart-1, muted, muted, muted, muted]
17
- sequential: { from: muted, to: chart-1 }
18
- diverging: { negative: chart-4, mid: muted, positive: chart-1 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: financial-diverging-threshold-overlay
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled by combining FT's deviation-chart form (Visual Vocabulary), Grafana's threshold-band rendering, and Datadog's cool/warm diverging guidance for a finance/trading-ops use case"
6
- license: open
7
- feel: "diverging above/below-baseline color with a threshold-band overlay — reads deviation at a glance, dense enough for a trading-floor wall"
8
- ---
9
- Use for finance/ops hybrids: P&L, budget-vs-actual, SLA burn-down — anywhere a zero-baseline or target line matters more than the raw series. Tooltip numerals are always monospace/tabular so figures align column-to-column across rows; the baseline gridline is dashed and visually distinct from the regular gridline set.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 10px mono, tabular-nums", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: dashed }
14
- tooltip: { surface: popover, numerals: mono, border: border }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: muted, to: chart-2 }
18
- diverging: { negative: destructive, mid: border, positive: success }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: ft-vocabulary-ranked-muted
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from FT's Visual Vocabulary poster/site (chart-doctor README, ft-interactive.github.io) — one shared chrome recipe across a chart family in a story"
6
- license: open
7
- feel: "consistent, muted chrome built to repeat across a whole family of ranking/deviation/correlation charts in one piece"
8
- ---
9
- Use when a single story needs several related chart types (ranking, deviation, correlation) to feel like one system rather than one-offs — the win is chrome consistency across the set, not any single chart's flourish. Works for both editorial and financial-story contexts.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 11px, left-aligned tick labels", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: card, numerals: mono, border: border }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: surface-raised, to: chart-1 }
18
- diverging: { negative: chart-4, mid: muted, positive: chart-2 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: grafana-dark-threshold-bands
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Grafana's threshold-configuration docs and internal theme style guide — dark-first monitoring canvas, colored threshold bands/lines"
6
- license: open
7
- feel: "dark-first monitoring wall where colored threshold bands do the alerting instead of the gridlines"
8
- ---
9
- Use for always-on ops dashboards viewed for hours at a stretch. The default 3-step threshold model (calm base, escalation step, critical step) should carry the alert signal; gridlines stay dense but low-contrast on the dark surface so they never compete with a threshold color for attention.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 10px mono for numeric ticks", ticks: minimal }
13
- gridlines: { direction: both, stroke: border, style: dashed }
14
- tooltip: { surface: popover, numerals: mono, border: border }
15
- legend: { position: right, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: success, to: destructive }
18
- diverging: { negative: destructive, mid: warning, positive: success }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: material-rounded-explicit-label
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Material Design's data-visualization accessibility blog post and its M2 data-visualization communication guidance — rounded bar terminals, never color-alone encoding"
6
- license: open
7
- feel: "rounded bar terminals and always-explicit labels — meaning never depends on color perception alone"
8
- ---
9
- Use for consumer-facing analytics in a Material-flavored product. Every legend swatch, axis, and mark gets a paired text label so meaning survives color-blindness or grayscale printing; series spacing runs tighter than a stock default for a friendlier, less clinical density. Good playful-SaaS anchor alongside the shadcn and gradient-area candidates.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 12px, always paired with a text label near the mark", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: card, numerals: sans, border: none }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: surface-raised, to: chart-1 }
18
- diverging: { negative: destructive, mid: muted, positive: success }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: nyt-ghost-grid-direct-label
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from storytellingwithdata's NYT-graphics analysis and an NYT-in-Keynote design breakdown — near-invisible gridlines, direct end-of-line labeling"
6
- license: open
7
- feel: "chrome so quiet it disappears — labels sit at the line's end instead of a legend box"
8
- ---
9
- Use for narrative line/area charts where the story is the shape of the series, not the axis. Direct-label every series at its terminus rather than building a legend; keep at most two hero hues, everything else recedes to neutral so the reader never round-trips to a key.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 10-11px sans, no bold weight", ticks: minimal }
13
- gridlines: { direction: horizontal, stroke: border, style: solid }
14
- tooltip: { surface: popover, numerals: sans, border: none }
15
- legend: { position: inline, style: line }
16
- categorical: [chart-1, chart-2, muted, muted, muted]
17
- sequential: { from: muted, to: chart-2 }
18
- diverging: { negative: chart-4, mid: border, positive: chart-2 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: plot-currentcolor-inherit
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from Observable Plot's axis and grid mark docs — currentColor inheritance, 0.1 default gridline opacity, tabular-nums ticks"
6
- license: open
7
- feel: "chrome that vanishes into whatever text color already surrounds it — the leanest possible embedded-chart default"
8
- ---
9
- Use for charts embedded inline in prose, notebooks, or docs, where the chart should inherit the surrounding page's ink color rather than carry its own theme. The distinctive move: gridlines aren't a separate lighter token, they're the same ink at ~10% opacity — worth noting for identity packages that only expose discrete token roles rather than an opacity primitive.
10
-
11
- ```yaml values
12
- axes: { stroke: foreground, labels: "foreground via currentColor inheritance, tabular-nums for quantitative ticks", ticks: on }
13
- gridlines: { direction: both, stroke: foreground, style: solid }
14
- tooltip: { surface: popover, numerals: mono, border: border }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: muted, to: chart-1 }
18
- diverging: { negative: chart-4, mid: border, positive: chart-2 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: saas-gradient-glow-area
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from shadcn/ui chart composition patterns and Observable Plot's underused-options gradient-fill notes — a common modern growth-analytics convention"
6
- license: open
7
- feel: "soft gradient-filled area glowing under a bright line, floating rounded tooltip — approachable, marketing-adjacent SaaS analytics"
8
- ---
9
- Use for growth or marketing-facing surfaces (usage charts, upgrade nudges, onboarding stats) that want visual warmth over analytical density. Gridlines are minimal-to-none since the gradient fill itself supplies the visual weight; pair with an elevated surface token for the tooltip so it reads as floating, not flush.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 11px, ticks hidden except first/last", ticks: off }
13
- gridlines: { direction: none, stroke: border, style: solid }
14
- tooltip: { surface: surface-overlay, numerals: sans, border: none }
15
- legend: { position: inline, style: line }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: surface-raised, to: chart-1 }
18
- diverging: { negative: chart-4, mid: muted, positive: chart-1 }
19
- ```
@@ -1,19 +0,0 @@
1
- ---
2
- id: shadcn-composable-css-vars
3
- class: a7
4
- sourced: 2026-07-12
5
- source: "Distilled from shadcn/ui's chart and tooltip docs — `--chart-1`…`--chart-5` CSS-variable tokens feeding composable tooltip/legend primitives"
6
- license: open
7
- feel: "CSS-variable chart tokens wired straight into composable tooltip/legend parts — horizontal-only grid, no vertical clutter"
8
- ---
9
- Use for modern product-analytics UI built on Recharts-via-shadcn. Grid is horizontal-only with vertical lines switched off; tooltip and legend read color from the same chart-N variables as the marks themselves, so recoloring the identity package recolors the whole chart system at once, chrome included.
10
-
11
- ```yaml values
12
- axes: { stroke: border, labels: "muted-foreground, 12px, tickLine off, ~10px tick margin", ticks: off }
13
- gridlines: { direction: horizontal, stroke: border, style: dashed }
14
- tooltip: { surface: popover, numerals: sans, border: border }
15
- legend: { position: top, style: swatch }
16
- categorical: [chart-1, chart-2, chart-3, chart-4, chart-5]
17
- sequential: { from: muted, to: chart-1 }
18
- diverging: { negative: chart-4, mid: border, positive: chart-1 }
19
- ```
@@ -1,58 +0,0 @@
1
- id,family,min_measures,max_measures,min_dims,max_dims,requires_flags,excludes_flags,viewport_min,notes
2
- bar,bar,1,1,1,1,,,mobile,zero-anchored value axis; one value per category; comfort cap 12 categories (K2)
3
- grouped-bar,bar,1,1,2,2,,,tablet,series cap 4 (K7); cross-group comparison of non-adjacent bars is hard
4
- stacked-bar,bar,1,1,2,2,parts-form-whole,negative-values,mobile,additive parts of one total; totals cap 10 (K4); middle segments lack a shared baseline
5
- diverging-bar,bar,1,1,1,2,negative-values,,mobile,meaningful zero or midpoint; Likert and population pyramid fold here
6
- lollipop,bar,1,1,1,1,,,mobile,less ink than a bar; right when values are large and similar
7
- dot-plot,bar,1,2,1,1,,mixed-units,mobile,common scale required; the no-zero-baseline escape
8
- dumbbell,bar,2,2,1,1,,mixed-units,mobile,exactly two points per category; start and end must share a unit
9
- pictogram,bar,1,1,1,1,whole-units,negative-values,tablet,one icon equals k units; stated unit scale; decorative
10
- line-basic,line,1,1,1,1,temporal|ordered-progression,,mobile,one series over ordered axis
11
- line-multi,line,1,1,2,2,temporal|ordered-progression,,mobile,series cap 6 (K3); beyond cap facet into small multiples
12
- line-with-target,line,2,2,1,1,temporal|ordered-progression|target-exists,mixed-units,mobile,series + target band
13
- area,line,1,1,1,1,temporal,negative-values|irregular-temporal,mobile,zero baseline; magnitude emphasis
14
- stacked-area,line,1,1,2,2,temporal|parts-form-whole,negative-values|irregular-temporal,tablet,additive parts over time; middle-layer trends unreadable
15
- streamgraph,line,1,1,2,2,temporal,negative-values|irregular-temporal,desktop,pattern only; wants many smooth series; no precise reading
16
- slope,line,1,1,2,2,temporal|ordered-progression,,mobile,exactly 2 or 3 x positions; rank-change emphasis
17
- bump,line,1,1,2,2,temporal|ordered-progression,,tablet,plots rank not value; series cap 12
18
- sparkline,line,1,1,1,1,temporal,,mobile,inline miniature; needs an adjacent number for scale
19
- pie,part-to-whole,1,1,1,1,parts-form-whole,temporal|negative-values,desktop,max 6 slices
20
- waffle,part-to-whole,1,1,1,1,parts-form-whole,negative-values,tablet,10x10 grid (K8); whole-cell rounding drops sub-1% parts
21
- treemap,part-to-whole,1,1,1,2,parts-form-whole,negative-values,tablet,children sum to parents; a flat one-level list degenerates fine
22
- sunburst,part-to-whole,1,1,0,2,tree|parts-form-whole,negative-values,desktop,hierarchy on concentric rings; outer-ring distortion caveat
23
- marimekko,part-to-whole,1,2,2,2,parts-form-whole,negative-values|mixed-units,desktop,two area dimensions; expert audiences
24
- funnel,part-to-whole,1,1,1,1,ordered-progression,negative-values,mobile,genuine ordered pipeline only; typically monotone decreasing
25
- histogram,distribution,1,1,0,1,raw-observations,,mobile,bins derived not supplied; never category-value pairs
26
- density,distribution,1,1,0,1,raw-observations,,tablet,KDE; bandwidth can oversmooth; needs large n
27
- box-plot,distribution,1,1,0,1,raw-observations,,mobile,five-number summary; hides multimodality
28
- violin,distribution,1,1,0,1,raw-observations,,tablet,mirrored KDE; needs enough n per group
29
- strip-plot,distribution,1,1,0,1,raw-observations,,mobile,every point drawn; jitter for ties; moderate n
30
- scatter,correlation,2,2,0,1,,,mobile,point-level rows; overplotting escape to hexbin at scale (K5)
31
- bubble,correlation,3,3,0,1,,,tablet,size maps to area never radius; size measure non-negative
32
- hexbin,correlation,2,2,0,1,raw-observations,,tablet,the overplotting escape; binned 2D density
33
- splom,correlation,3,8,0,1,raw-observations,,desktop,pairwise panels grow O(k^2); variable cap 8 (K9)
34
- parallel-coordinates,correlation,3,12,0,1,,,desktop,axes normalized individually; axis order changes visible structure
35
- radar,correlation,3,8,0,1,,mixed-units,tablet,shared or normalized axes; spurious area reading; entity cap 3
36
- ordered-bar,ranking,1,1,1,1,,,mobile,sorted by value not label; inherits bar constraints (K2)
37
- pareto,ranking,1,1,1,1,parts-form-whole,negative-values,desktop,descending bars + cumulative percent line; additive counts only
38
- sankey,flow,1,1,2,2,edges|ordered-progression,negative-values,desktop,conservation reads best; no cycles; stage-ordered nodes
39
- chord,flow,1,1,2,2,edges|matrix,negative-values,desktop,pairwise flows; dense matrices become ribbon spaghetti
40
- waterfall,flow,1,1,1,1,ordered-progression,,tablet,ordered decomposition start to end; signed contributions welcome
41
- network-graph,network,0,1,2,2,edges,,desktop,visible-node cap ~300 (K10); beyond that use an adjacency matrix
42
- tree-diagram,network,0,1,0,2,tree,,tablet,parent-child hierarchy; dendrogram adds merge height
43
- choropleth,geo,1,1,1,1,geo,no-color-encoding,tablet,rates never raw totals
44
- symbol-map,geo,1,1,1,1,geo,negative-values,tablet,totals; size to area; complement of choropleth
45
- flow-map,geo,0,1,2,2,geo,,desktop,origin-destination movement across geography
46
- point-map,geo,0,0,1,2,geo,,mobile,position only; no value encoding
47
- gantt,temporal-event,0,1,1,2,interval,,desktop,true start AND end per row
48
- event-timeline,temporal-event,0,0,1,2,temporal,,mobile,point events not intervals; labels not measures; optional track dimension
49
- calendar-heatmap,temporal-event,1,1,1,1,temporal,no-color-encoding,tablet,daily grain on a calendar grid; pattern over precision
50
- kpi-card,kpi,1,2,0,0,,,mobile,needs comparison context; delta or target welcome
51
- gauge,kpi,1,1,0,0,target-exists,,tablet,defined domain required; space-hungry; decorative
52
- progress-bar,kpi,1,1,0,0,target-exists,negative-values,mobile,one part-versus-whole fact; meaningless without a goal
53
- bullet,kpi,1,2,0,1,target-exists,mixed-units,mobile,target marker + qualitative bands; compact gauge replacement
54
- heatmap,matrix,1,1,2,2,,no-color-encoding,tablet,one value per cell; aggregate first; replaces spaghetti lines at high series counts
55
- table,table,0,99,0,99,,,mobile,universal fallback; exact values over comparison
56
- table-hybrid,table,1,99,0,99,,,tablet,data bars; cell heat; inline sparklines; the bridge leaf
57
- candlestick,specialized,4,4,1,1,temporal,irregular-temporal,desktop,strict OHLC tuple per period
58
- error-bands,specialized,1,3,0,2,uncertainty,,mobile,composite overlay; attaches to line or bar or scatter; never standalone
@@ -1,21 +0,0 @@
1
- ---
2
- id: browse
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (page archetypes, table mechanics, state matrix chapters)"
6
- license: open
7
- ---
8
- Positive obligations for a browse surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - A visible result count adjacent to the search/filter controls that reflects the active filter set ("1–50 of 1,204").
11
- - Every active filter rendered as a dismissible chip or token near the results, so the current slice is readable at a glance.
12
- - A search or quick-filter input whose placeholder names what is searchable ("Search by name, email, or ID…").
13
- - Saved or standing views surfaced as named tabs or a view switcher, with the active view visibly marked.
14
- - Real pagination or an explicit total with position — never an unbounded, unlabeled scroll.
15
- - Sort state visible on the sorted column or control (direction indicator on the header).
16
- - Status values rendered as colored chips or badges, one distinct color per state, consistent everywhere the status appears.
17
- - Table columns aligned by type: numbers right-aligned in tabular figures, text left-aligned, dates in one consistent format.
18
- - Each result row or card leads with the record's human identity (name/title), not its internal ID.
19
- - Row or card hover affordance: a background shift, revealed actions, or both, on every result.
20
- - A designed zero-results state that names the active filters and offers a one-click clear-filters action.
21
- - A designed true-empty state (no records exist yet) distinct from zero-results, with a path to create or import.
@@ -1,20 +0,0 @@
1
- ---
2
- id: creation-flow
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (creation-path catalog, modes, state matrix chapters)"
6
- license: open
7
- ---
8
- Positive obligations for a creation-flow surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - The first input focused on entry (visible focus ring), with field order matching reading order.
11
- - Required and optional fields visibly distinguished — one convention, applied to every field.
12
- - A progress indicator whenever the flow has steps: current step named, completed steps visually distinct, completed steps re-enterable.
13
- - Fields grouped into labeled sections rather than one undifferentiated column.
14
- - Sensible defaults pre-filled wherever one exists (owner = current user, date = today, visible and editable).
15
- - Inline validation rendered beside the offending field, with a message that names the fix ("Must be a work email"), not just an error color.
16
- - The primary action labeled verb + object ("Create ticket", "Invite member") — never a bare "Submit".
17
- - A visible cancel or close path, with draft preservation signaled when the flow is dismissed mid-entry.
18
- - On failed submit, an error summary that names each problem and points (link or scroll) to its field.
19
- - Helper text under any field whose format or effect isn't self-evident.
20
- - Success hands the user the created object: navigation to it or a named link, with confirmation copy naming what was created.
@@ -1,21 +0,0 @@
1
- ---
2
- id: dashboard
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (dashboards chapter: every tile is number + comparison + trend + state + door)"
6
- license: open
7
- ---
8
- Positive obligations for a dashboard surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - Every KPI tile carries all five parts: the number, a comparison (vs. prior period or target), a trend (sparkline or delta), a state (good/warn/bad treatment), and a door (a click-through to the detail behind it).
11
- - Numbers formatted for scanning: tabular figures, thousands separators, units or currency attached, consistent decimal places across tiles.
12
- - Deltas signed and colored by meaning — down can be green when down is good — never colored by direction alone.
13
- - One time-range control visible and visibly applied to every widget it scopes ("Last 30 days" readable on the surface).
14
- - Every chart titled with the measure and dimension in plain words ("Revenue by region"), not an internal metric name.
15
- - Chart axes labeled or self-evident, with an honest baseline on value axes.
16
- - A legend wherever more than one series shares a plot, with legend colors matching the marks.
17
- - Data freshness stamped somewhere fixed ("Updated 4 min ago" / "As of 09:00").
18
- - Any metric in a breach or alert state visibly different at a glance — the surface points the eye at what's wrong.
19
- - Widgets aligned to a shared grid with consistent gutters; region edges line up across the page.
20
- - Each widget owning a designed loading state (skeleton in the widget's own footprint) and a designed empty state naming what's missing.
21
- - Every table or list widget cut to a readable size with a door to the full view ("View all 214").
@@ -1,21 +0,0 @@
1
- ---
2
- id: grid
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (table mechanics, container choice, state matrix chapters)"
6
- license: open
7
- ---
8
- Positive obligations for a grid surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - An identity column (or columns) frozen against horizontal scroll, anchoring every row.
11
- - Column headers sticky against vertical scroll, so field names never leave the screen.
12
- - Cell rendering differentiated by type: numbers right-aligned in tabular figures, dates in one format, enums as chips, booleans as checks — never everything as plain left-aligned text.
13
- - A selection checkbox column with a select-all control in the header.
14
- - A bulk-action bar that appears with a visible selection count once rows are selected, naming the actions it applies.
15
- - An add-record affordance pinned to a fixed location (bottom edge or toolbar), visible without scrolling.
16
- - Group headers carrying aggregates (count, sum, or average) whenever grouping is active.
17
- - A visible cell focus state distinct from row hover, so the editing target is unambiguous.
18
- - A density or row-height control in the toolbar.
19
- - The total record count visible somewhere fixed (toolbar or footer).
20
- - Inline save-state feedback on edited cells: saving, saved, or error, each visually distinct.
21
- - A designed empty state for a grid with no rows, with a create or import path — never a bare header row over whitespace.
@@ -1,21 +0,0 @@
1
- ---
2
- id: queue
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (page archetypes, verbs, state matrix chapters)"
6
- license: open
7
- ---
8
- Positive obligations for a queue surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - The queue's ordering key (priority, age, SLA) readable from the first screen — the operator can say why the top item is on top.
11
- - Claim/ownership state on every item: an assignee avatar or name, or an explicit unclaimed marker.
12
- - An aging or SLA indicator per item (time in queue, due-in countdown) whose color shifts as the deadline degrades.
13
- - Visible keyboard affordances for advancing: shortcut hints on the primary actions or a reachable shortcuts overlay (J/K-style next/previous).
14
- - Item counts visible per view or group, so backlog size is readable without scrolling.
15
- - Unprocessed items visually distinct from processed ones (weight, dot, or background — more than color alone).
16
- - The selected item highlighted in the list while its detail is open, so the operator keeps their place.
17
- - The primary triage verbs (resolve, approve, reassign, escalate) reachable from the item without leaving the queue — a pinned action bar, not a buried menu.
18
- - Item status rendered as a colored chip, consistent with the same status colors used elsewhere in the product.
19
- - Priority or escalation markers visually ranked — urgent reads heavier than high, high heavier than normal.
20
- - A designed queue-cleared state (celebratory or calm, but authored) distinct from a zero-results filter state.
21
- - A designed degraded state when items fail to load, with a retry affordance.
@@ -1,21 +0,0 @@
1
- ---
2
- id: record-detail
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (attributes/lifecycle/history, verbs, standard pages chapters)"
6
- license: open
7
- ---
8
- Positive obligations for a record-detail surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - The record's human identity (name/title) and its lifecycle status both visible in the header without scrolling.
11
- - A highlights band carrying the 3–7 most-referenced fields at the top of the page.
12
- - The primary verbs for the record's current state rendered as visible buttons in the header — the top actions are not buried in an overflow menu.
13
- - An activity or history timeline where every entry carries an actor and a timestamp.
14
- - Related records surfaced (rail, tabs, or cards) with a count per relationship type.
15
- - A tab strip or section navigation when content exceeds one screen, with the active section visibly marked.
16
- - Every field value paired with a visible label — no orphan values the reader must guess at.
17
- - Empty fields rendered as a designed "not set" affordance (muted dash or add prompt), never blank space.
18
- - Editable fields showing an edit affordance on hover or focus.
19
- - Timestamps rendered consistently, with relative age ("2h ago") where recency drives decisions.
20
- - The status chip using the same color and label the collection view uses for that state.
21
- - A breadcrumb or back affordance naming the collection this record came from.
@@ -1,21 +0,0 @@
1
- ---
2
- id: settings
3
- class: e2
4
- sourced: 2026-07-12
5
- source: "derived from the D3 blueprint sweep + the b2b-ux-patterns distillation (settings chapter: scope → subject → risk)"
6
- license: open
7
- ---
8
- Positive obligations for a settings surface — what every good instance has, each checkable from a rendered screen.
9
-
10
- - The scope visibly labeled on every page: whether these settings apply to the person, the workspace, or the organization.
11
- - A navigation surface (category nav, tab strip, or quick-find) with the active category visibly marked.
12
- - Every setting carrying a label and a one-line description of its effect — the control alone never has to explain itself.
13
- - Current values readable without entering an edit mode.
14
- - Save semantics explicit: a save bar that enables on change, or per-control auto-save with a visible saved confirmation — one convention for the whole surface.
15
- - Toggle and radio states distinguishable by more than color alone (position, label, or icon).
16
- - Risky settings preceded by a consequence note ("Applies to all 34 members") before the control.
17
- - Destructive actions isolated in a visually distinct danger zone, each gated by a confirmation that requires intent (typing the name, not just OK).
18
- - Collection-type settings (API keys, webhooks, members, roles) rendered as a table with a labeled add action and per-row management.
19
- - Secrets shown masked, with reveal and copy affordances.
20
- - A quick-find search over settings when the category list exceeds one viewport.
21
- - Settings the viewer cannot change shown disabled with a note naming who can — not silently hidden.