@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.
- package/data/harness-index.json +1 -1
- package/data/harnesses/code/harness.json +1 -1
- package/data/harnesses/code/rules/frontend.md +5 -5
- package/data/harnesses/code/skills/design/SKILL.md +70 -50
- package/data/harnesses/code/skills/design/components/charts.md +76 -0
- package/data/harnesses/code/skills/design/components/collections.md +132 -0
- package/data/harnesses/code/skills/design/components/feedback.md +47 -0
- package/data/harnesses/code/skills/design/components/hooks.md +35 -0
- package/data/harnesses/code/skills/design/components/index.md +143 -0
- package/data/harnesses/code/skills/design/components/inputs.md +327 -0
- package/data/harnesses/code/skills/design/components/layout.md +52 -0
- package/data/harnesses/code/skills/design/components/media.md +66 -0
- package/data/harnesses/code/skills/design/components/motion.md +82 -0
- package/data/harnesses/code/skills/design/components/navigation.md +29 -0
- package/data/harnesses/code/skills/design/components/overlays.md +72 -0
- package/data/harnesses/code/skills/design/components/setup.md +40 -0
- package/data/harnesses/code/skills/design/components/typography.md +46 -0
- package/data/harnesses/code/skills/design/components/utils.md +37 -0
- package/data/harnesses/code/skills/design/data/blueprints/browse.md +38 -0
- package/data/harnesses/code/skills/design/data/blueprints/creation-flow.md +38 -0
- package/data/harnesses/code/skills/design/data/blueprints/dashboard.md +38 -0
- package/data/harnesses/code/skills/design/data/blueprints/grid.md +38 -0
- package/data/harnesses/code/skills/design/data/blueprints/queue.md +38 -0
- package/data/harnesses/code/skills/design/data/blueprints/record-detail.md +38 -0
- package/data/harnesses/code/skills/design/data/blueprints/settings.md +38 -0
- package/data/harnesses/code/skills/design/data/chart-styling/Readme.md +33 -0
- package/data/harnesses/code/skills/design/data/chart-styling/carbon-accessible-alert-semantic.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/carbon-monochrome-sequential-trend.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/datadog-classic-six-aligned.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/datawrapper-tiered-gray-hierarchy.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/econ-red-rule-horizontal.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/financial-diverging-threshold-overlay.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/ft-vocabulary-ranked-muted.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/grafana-dark-threshold-bands.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/material-rounded-explicit-label.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/nyt-ghost-grid-direct-label.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/plot-currentcolor-inherit.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/saas-gradient-glow-area.md +19 -0
- package/data/harnesses/code/skills/design/data/chart-styling/shadcn-composable-css-vars.md +19 -0
- package/data/harnesses/code/skills/design/data/charts/census.csv +58 -0
- package/data/harnesses/code/skills/design/data/checklists/browse.md +21 -0
- package/data/harnesses/code/skills/design/data/checklists/creation-flow.md +20 -0
- package/data/harnesses/code/skills/design/data/checklists/dashboard.md +21 -0
- package/data/harnesses/code/skills/design/data/checklists/grid.md +21 -0
- package/data/harnesses/code/skills/design/data/checklists/queue.md +21 -0
- package/data/harnesses/code/skills/design/data/checklists/record-detail.md +21 -0
- package/data/harnesses/code/skills/design/data/checklists/settings.md +21 -0
- package/data/harnesses/code/skills/design/data/chrome/board-column.md +68 -0
- package/data/harnesses/code/skills/design/data/chrome/data-table.md +63 -0
- package/data/harnesses/code/skills/design/data/chrome/side-panel.md +60 -0
- package/data/harnesses/code/skills/design/data/chrome/sidebar.md +78 -0
- package/data/harnesses/code/skills/design/data/chrome/stat-cards.md +62 -0
- package/data/harnesses/code/skills/design/data/chrome/topbar.md +65 -0
- package/data/harnesses/code/skills/design/data/color/accent-presets.md +90 -0
- package/data/harnesses/code/skills/design/data/color/aesop-earth-mute.md +91 -0
- package/data/harnesses/code/skills/design/data/color/arc-peach-play.md +90 -0
- package/data/harnesses/code/skills/design/data/color/attio-hunter-teal.md +90 -0
- package/data/harnesses/code/skills/design/data/color/carbon-cyan-signal.md +90 -0
- package/data/harnesses/code/skills/design/data/color/clay-parchment.md +90 -0
- package/data/harnesses/code/skills/design/data/color/duolingo-feather.md +90 -0
- package/data/harnesses/code/skills/design/data/color/geist-mono-signal.md +90 -0
- package/data/harnesses/code/skills/design/data/color/linear-graphite-violet.md +90 -0
- package/data/harnesses/code/skills/design/data/color/mercury-onyx-cobalt.md +90 -0
- package/data/harnesses/code/skills/design/data/color/notion-paper-ink.md +90 -0
- package/data/harnesses/code/skills/design/data/color/radix-slate-iris.md +90 -0
- package/data/harnesses/code/skills/design/data/color/raycast-void-spectrum.md +90 -0
- package/data/harnesses/code/skills/design/data/color/spectrum-celery-fuchsia.md +90 -0
- package/data/harnesses/code/skills/design/data/color/stripe-blurple-ruby.md +90 -0
- package/data/harnesses/code/skills/design/data/color/superhuman-cod-picton.md +89 -0
- package/data/harnesses/code/skills/design/data/corpora/operations-review/companies.csv +15 -0
- package/data/harnesses/code/skills/design/data/corpora/operations-review/corpus.md +87 -0
- package/data/harnesses/code/skills/design/data/corpora/operations-review/people.csv +25 -0
- package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/companies.csv +15 -0
- package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/corpus.md +83 -0
- package/data/harnesses/code/skills/design/data/corpora/procurement-approvals/people.csv +25 -0
- package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/companies.csv +15 -0
- package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/corpus.md +89 -0
- package/data/harnesses/code/skills/design/data/corpora/revenue-analytics/people.csv +25 -0
- package/data/harnesses/code/skills/design/data/elevation/ant-design-directional-shadow.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/apple-liquid-glass-material.md +18 -0
- package/data/harnesses/code/skills/design/data/elevation/atlassian-surface-shadow-pairing.md +20 -0
- package/data/harnesses/code/skills/design/data/elevation/fluent-2-key-ambient-ramp.md +20 -0
- package/data/harnesses/code/skills/design/data/elevation/github-primer-sparing-shadow.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/ibm-carbon-layer-and-border.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/linear-dark-surface-ladder.md +17 -0
- package/data/harnesses/code/skills/design/data/elevation/material-2-key-ambient-dp-ramp.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/material-3-tonal-elevation.md +21 -0
- package/data/harnesses/code/skills/design/data/elevation/neobrutalist-hard-offset.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/neumorphic-soft-dual-shadow.md +18 -0
- package/data/harnesses/code/skills/design/data/elevation/notion-warm-minimal-hairline.md +17 -0
- package/data/harnesses/code/skills/design/data/elevation/polaris-elevation-inset-bevel.md +21 -0
- package/data/harnesses/code/skills/design/data/elevation/radix-themes-alpha-ring-scale.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/shadcn-neutral-derived-radius.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/stripe-brand-tinted-dual-shadow.md +18 -0
- package/data/harnesses/code/skills/design/data/elevation/tailwind-default-utility-scale.md +19 -0
- package/data/harnesses/code/skills/design/data/elevation/vercel-geist-shadow-as-border.md +20 -0
- package/data/harnesses/code/skills/design/data/gradients/amber-attention-fill.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/cloud-shadow-wash.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/confident-lavender-wash.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/ember-ship-flare.md +18 -0
- package/data/harnesses/code/skills/design/data/gradients/full-metal-wash.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/indigo-ruby-cta-band.md +18 -0
- package/data/harnesses/code/skills/design/data/gradients/linear-graphite-wash.md +18 -0
- package/data/harnesses/code/skills/design/data/gradients/marble-quartz-wash.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/midnight-aurora-panel.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/neutral-volume-fill.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/revenue-uptrend-fill.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/risk-decline-fill.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/signal-blue-develop.md +18 -0
- package/data/harnesses/code/skills/design/data/gradients/slate-mist-wash.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/stripe-atmosphere-mesh.md +18 -0
- package/data/harnesses/code/skills/design/data/gradients/teal-signal-accent.md +16 -0
- package/data/harnesses/code/skills/design/data/gradients/violet-magenta-promo.md +16 -0
- package/data/harnesses/code/skills/design/data/iconography.md +199 -0
- package/data/harnesses/code/skills/design/data/motion/accordion-expand.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/destructive-hold-confirm.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/drag-dismiss-momentum.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/empty-state-arrive.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/hover-lift.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/modal-center-arrive.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/number-ticker-roll.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/onboarding-bounce.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/panel-slide.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/press-feedback.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/progress-linear-loop.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/route-crossfade.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/rubber-band-overscroll.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/skeleton-shimmer.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/stagger-arrive.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/toast-enter-stack.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/tooltip-chain-instant.md +18 -0
- package/data/harnesses/code/skills/design/data/motion/trigger-anchored-reveal.md +18 -0
- package/data/harnesses/code/skills/design/data/tells.csv +34 -0
- package/data/harnesses/code/skills/design/data/typography/anton-work-sans.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/archivo-black-archivo.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/bitter-karla.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/dm-serif-dm-sans.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/fraunces-inter.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/geist-geist-mono.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/hubot-sans-mona-sans.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/ibm-plex-sans-operator-single-family.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/instrument-serif-instrument-sans.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/inter-operator-single-family.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/libre-baskerville-libre-franklin.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/newsreader-inter.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/playfair-display-source-sans.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/public-sans-operator-single-family.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/sohne-inter-fintech.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/source-serif-source-sans.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/space-grotesk-work-sans-space-mono.md +17 -0
- package/data/harnesses/code/skills/design/data/typography/spectral-manrope.md +17 -0
- package/data/harnesses/code/skills/design/data/voices/bright-collaborator.md +29 -0
- package/data/harnesses/code/skills/design/data/voices/direct-operator.md +29 -0
- package/data/harnesses/code/skills/design/data/voices/earnest-helper.md +29 -0
- package/data/harnesses/code/skills/design/data/voices/editorial-composed.md +29 -0
- package/data/harnesses/code/skills/design/data/voices/quiet-concierge.md +29 -0
- package/data/harnesses/code/skills/design/data/voices/warm-guide.md +29 -0
- package/data/harnesses/code/skills/design/design-md/SCHEMA.md +179 -0
- package/data/harnesses/code/skills/design/design-md/index.csv +67 -0
- package/data/harnesses/code/skills/design/design-md/library/airbnb.md +207 -0
- package/data/harnesses/code/skills/design/design-md/library/airtable.md +205 -0
- package/data/harnesses/code/skills/design/design-md/library/anthropic-claude.md +203 -0
- package/data/harnesses/code/skills/design/design-md/library/apple.md +206 -0
- package/data/harnesses/code/skills/design/design-md/library/binance.md +210 -0
- package/data/harnesses/code/skills/design/design-md/library/bmw.md +210 -0
- package/data/harnesses/code/skills/design/design-md/library/cal.md +209 -0
- package/data/harnesses/code/skills/design/design-md/library/clay.md +204 -0
- package/data/harnesses/code/skills/design/design-md/library/clickhouse.md +205 -0
- package/data/harnesses/code/skills/design/design-md/library/cohere.md +205 -0
- package/data/harnesses/code/skills/design/design-md/library/coinbase.md +198 -0
- package/data/harnesses/code/skills/design/design-md/library/composio.md +198 -0
- package/data/harnesses/code/skills/design/design-md/library/cursor.md +197 -0
- package/data/harnesses/code/skills/design/design-md/library/elevenlabs.md +199 -0
- package/data/harnesses/code/skills/design/design-md/library/expo.md +200 -0
- package/data/harnesses/code/skills/design/design-md/library/figma.md +199 -0
- package/data/harnesses/code/skills/design/design-md/library/framer.md +202 -0
- package/data/harnesses/code/skills/design/design-md/library/hashicorp.md +205 -0
- package/data/harnesses/code/skills/design/design-md/library/ibm.md +205 -0
- package/data/harnesses/code/skills/design/design-md/library/intercom.md +204 -0
- package/data/harnesses/code/skills/design/design-md/library/kraken.md +200 -0
- package/data/harnesses/code/skills/design/design-md/library/linear-app.md +198 -0
- package/data/harnesses/code/skills/design/design-md/library/lovable.md +199 -0
- package/data/harnesses/code/skills/design/design-md/library/meta.md +204 -0
- package/data/harnesses/code/skills/design/design-md/library/minimax.md +204 -0
- package/data/harnesses/code/skills/design/design-md/library/mintlify.md +210 -0
- package/data/harnesses/code/skills/design/design-md/library/miro.md +209 -0
- package/data/harnesses/code/skills/design/design-md/library/mistral-ai.md +201 -0
- package/data/harnesses/code/skills/design/design-md/library/mongodb.md +201 -0
- package/data/harnesses/code/skills/design/design-md/library/notion.md +204 -0
- package/data/harnesses/code/skills/design/design-md/library/nvidia.md +215 -0
- package/data/harnesses/code/skills/design/design-md/library/ollama.md +213 -0
- package/data/harnesses/code/skills/design/design-md/library/opencode-ai.md +216 -0
- package/data/harnesses/code/skills/design/design-md/library/posthog.md +218 -0
- package/data/harnesses/code/skills/design/design-md/library/raycast.md +214 -0
- package/data/harnesses/code/skills/design/design-md/library/replicate.md +202 -0
- package/data/harnesses/code/skills/design/design-md/library/resend.md +203 -0
- package/data/harnesses/code/skills/design/design-md/library/revolut.md +203 -0
- package/data/harnesses/code/skills/design/design-md/library/runwayml.md +203 -0
- package/data/harnesses/code/skills/design/design-md/library/sanity.md +200 -0
- package/data/harnesses/code/skills/design/design-md/library/sentry.md +201 -0
- package/data/harnesses/code/skills/design/design-md/library/shopify.md +202 -0
- package/data/harnesses/code/skills/design/design-md/library/slack.md +202 -0
- package/data/harnesses/code/skills/design/design-md/library/spacex.md +206 -0
- package/data/harnesses/code/skills/design/design-md/library/spotify.md +206 -0
- package/data/harnesses/code/skills/design/design-md/library/stripe.md +196 -0
- package/data/harnesses/code/skills/design/design-md/library/supabase.md +196 -0
- package/data/harnesses/code/skills/design/design-md/library/superhuman.md +194 -0
- package/data/harnesses/code/skills/design/design-md/library/tesla.md +198 -0
- package/data/harnesses/code/skills/design/design-md/library/theverge.md +199 -0
- package/data/harnesses/code/skills/design/design-md/library/together-ai.md +193 -0
- package/data/harnesses/code/skills/design/design-md/library/uber.md +195 -0
- package/data/harnesses/code/skills/design/design-md/library/vercel.md +195 -0
- package/data/harnesses/code/skills/design/design-md/library/voltagent.md +197 -0
- package/data/harnesses/code/skills/design/design-md/library/warp.md +196 -0
- package/data/harnesses/code/skills/design/design-md/library/webflow.md +197 -0
- package/data/harnesses/code/skills/design/design-md/library/wired.md +197 -0
- package/data/harnesses/code/skills/design/design-md/library/wise.md +198 -0
- package/data/harnesses/code/skills/design/design-md/library/x-ai.md +199 -0
- package/data/harnesses/code/skills/design/design-md/library/zapier.md +198 -0
- package/data/harnesses/code/skills/design/design-md/nurix.md +214 -0
- package/data/harnesses/code/skills/design/design-md/variants/editorial-luxury.md +184 -0
- package/data/harnesses/code/skills/design/design-md/variants/expressive-saas.md +216 -0
- package/data/harnesses/code/skills/design/design-md/variants/quiet-premium.md +211 -0
- package/data/harnesses/code/skills/design/design-md/variants/terse-dense-operator.md +212 -0
- package/data/harnesses/code/skills/design/design-md/variants/warm-approachable.md +216 -0
- package/data/harnesses/code/skills/design/references/compose.md +23 -0
- package/data/harnesses/code/skills/design/references/content.md +28 -0
- package/data/harnesses/code/skills/design/references/emission.md +21 -0
- package/data/harnesses/code/skills/design/references/existing-apps.md +27 -0
- package/data/harnesses/code/skills/design/references/intake.md +36 -0
- package/data/harnesses/code/skills/design/references/object-pass.md +24 -0
- package/data/harnesses/code/skills/design/references/ship-gate.md +29 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/Readme.md +195 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/ai-layer.md +49 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/attributes-lifecycle.md +43 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/container-choice.md +44 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/creation-paths.md +46 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/dashboards.md +42 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/modes.md +42 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/object-model.md +46 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/page-archetype.md +48 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/promotion-demotion.md +37 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/settings.md +42 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/standard-pages.md +46 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/state-matrix.md +41 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/table-mechanics.md +48 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/verbs.md +45 -0
- package/data/harnesses/code/skills/design/references/ux-patterns/viewer-context.md +40 -0
- package/data/harnesses/code/skills/design/scripts/README-validator.md +27 -0
- package/data/harnesses/code/skills/design/scripts/select-chart.mjs +596 -0
- package/data/harnesses/code/skills/design/scripts/validate-design-md.mjs +1198 -0
- package/data/harnesses/discussion/CLAUDE.md +1 -1
- package/data/harnesses/discussion/agents/discussion-baseline.md +27 -2
- package/data/harnesses/discussion/harness.json +2 -2
- package/data/harnesses/discussion/rules/artifacts.md +2 -0
- package/data/harnesses/discussion/rules/method.md +5 -1
- package/package.json +1 -1
- package/data/harnesses/code/skills/design/data/catalog/rules.csv +0 -137
- package/data/harnesses/code/skills/design/data/combinations/Readme.md +0 -33
- package/data/harnesses/code/skills/design/data/combinations/accent-presets.md +0 -113
- package/data/harnesses/code/skills/design/data/combinations/charts.csv +0 -33
- package/data/harnesses/code/skills/design/data/combinations/fonts-known.json +0 -448
- package/data/harnesses/code/skills/design/data/combinations/icons.csv +0 -157
- package/data/harnesses/code/skills/design/data/combinations/landing.csv +0 -38
- package/data/harnesses/code/skills/design/data/combinations/lucide-names.json +0 -2001
- package/data/harnesses/code/skills/design/data/combinations/manifest.json +0 -330
- package/data/harnesses/code/skills/design/data/combinations/motion.csv +0 -10
- package/data/harnesses/code/skills/design/data/combinations/palettes.csv +0 -92
- package/data/harnesses/code/skills/design/data/combinations/product-router.csv +0 -80
- package/data/harnesses/code/skills/design/data/combinations/styles.csv +0 -67
- package/data/harnesses/code/skills/design/data/combinations/typography.csv +0 -64
- package/data/harnesses/code/skills/design/data/design-md/SCHEMA.md +0 -106
- package/data/harnesses/code/skills/design/data/design-md/library/airbnb.md +0 -154
- package/data/harnesses/code/skills/design/data/design-md/library/airtable.md +0 -151
- package/data/harnesses/code/skills/design/data/design-md/library/anthropic-claude.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/apple.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/binance.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/bmw.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/cal.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/clay.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/clickhouse.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/cohere.md +0 -147
- package/data/harnesses/code/skills/design/data/design-md/library/coinbase.md +0 -156
- package/data/harnesses/code/skills/design/data/design-md/library/composio.md +0 -138
- package/data/harnesses/code/skills/design/data/design-md/library/cursor.md +0 -138
- package/data/harnesses/code/skills/design/data/design-md/library/elevenlabs.md +0 -137
- package/data/harnesses/code/skills/design/data/design-md/library/expo.md +0 -148
- package/data/harnesses/code/skills/design/data/design-md/library/figma.md +0 -141
- package/data/harnesses/code/skills/design/data/design-md/library/framer.md +0 -156
- package/data/harnesses/code/skills/design/data/design-md/library/hashicorp.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/ibm.md +0 -153
- package/data/harnesses/code/skills/design/data/design-md/library/intercom.md +0 -158
- package/data/harnesses/code/skills/design/data/design-md/library/kraken.md +0 -156
- package/data/harnesses/code/skills/design/data/design-md/library/linear-app.md +0 -122
- package/data/harnesses/code/skills/design/data/design-md/library/lovable.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/meta.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/minimax.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/mintlify.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/miro.md +0 -153
- package/data/harnesses/code/skills/design/data/design-md/library/mistral-ai.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/mongodb.md +0 -155
- package/data/harnesses/code/skills/design/data/design-md/library/notion.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/nvidia.md +0 -141
- package/data/harnesses/code/skills/design/data/design-md/library/ollama.md +0 -145
- package/data/harnesses/code/skills/design/data/design-md/library/opencode-ai.md +0 -142
- package/data/harnesses/code/skills/design/data/design-md/library/posthog.md +0 -152
- package/data/harnesses/code/skills/design/data/design-md/library/raycast.md +0 -137
- package/data/harnesses/code/skills/design/data/design-md/library/replicate.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/resend.md +0 -170
- package/data/harnesses/code/skills/design/data/design-md/library/revolut.md +0 -145
- package/data/harnesses/code/skills/design/data/design-md/library/runwayml.md +0 -137
- package/data/harnesses/code/skills/design/data/design-md/library/sanity.md +0 -168
- package/data/harnesses/code/skills/design/data/design-md/library/sentry.md +0 -163
- package/data/harnesses/code/skills/design/data/design-md/library/shopify.md +0 -147
- package/data/harnesses/code/skills/design/data/design-md/library/slack.md +0 -158
- package/data/harnesses/code/skills/design/data/design-md/library/spacex.md +0 -171
- package/data/harnesses/code/skills/design/data/design-md/library/spotify.md +0 -166
- package/data/harnesses/code/skills/design/data/design-md/library/stripe.md +0 -160
- package/data/harnesses/code/skills/design/data/design-md/library/supabase.md +0 -173
- package/data/harnesses/code/skills/design/data/design-md/library/superhuman.md +0 -145
- package/data/harnesses/code/skills/design/data/design-md/library/tesla.md +0 -153
- package/data/harnesses/code/skills/design/data/design-md/library/theverge.md +0 -167
- package/data/harnesses/code/skills/design/data/design-md/library/together-ai.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/uber.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/vercel.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/voltagent.md +0 -130
- package/data/harnesses/code/skills/design/data/design-md/library/warp.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/webflow.md +0 -140
- package/data/harnesses/code/skills/design/data/design-md/library/wired.md +0 -139
- package/data/harnesses/code/skills/design/data/design-md/library/wise.md +0 -137
- package/data/harnesses/code/skills/design/data/design-md/library/x-ai.md +0 -138
- package/data/harnesses/code/skills/design/data/design-md/library/zapier.md +0 -158
- package/data/harnesses/code/skills/design/data/design-md/nurix.md +0 -138
- package/data/harnesses/code/skills/design/data/design-tokens/SCHEMA.md +0 -695
- package/data/harnesses/code/skills/design/data/design-tokens/airbnb/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/airbnb/design.tokens.json +0 -1272
- package/data/harnesses/code/skills/design/data/design-tokens/airtable/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/airtable/design.tokens.json +0 -1268
- package/data/harnesses/code/skills/design/data/design-tokens/anthropic-claude/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/anthropic-claude/design.tokens.json +0 -1273
- package/data/harnesses/code/skills/design/data/design-tokens/apple/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/apple/design.tokens.json +0 -1262
- package/data/harnesses/code/skills/design/data/design-tokens/binance/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/binance/design.tokens.json +0 -1257
- package/data/harnesses/code/skills/design/data/design-tokens/bmw/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/bmw/design.tokens.json +0 -1270
- package/data/harnesses/code/skills/design/data/design-tokens/cal/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/cal/design.tokens.json +0 -1270
- package/data/harnesses/code/skills/design/data/design-tokens/clay/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/clay/design.tokens.json +0 -1261
- package/data/harnesses/code/skills/design/data/design-tokens/clickhouse/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/clickhouse/design.tokens.json +0 -1268
- package/data/harnesses/code/skills/design/data/design-tokens/cohere/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/cohere/design.tokens.json +0 -1281
- package/data/harnesses/code/skills/design/data/design-tokens/coinbase/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/coinbase/design.tokens.json +0 -1262
- package/data/harnesses/code/skills/design/data/design-tokens/composio/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/composio/design.tokens.json +0 -1271
- package/data/harnesses/code/skills/design/data/design-tokens/cursor/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/cursor/design.tokens.json +0 -1276
- package/data/harnesses/code/skills/design/data/design-tokens/elevenlabs/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/elevenlabs/design.tokens.json +0 -1293
- package/data/harnesses/code/skills/design/data/design-tokens/expo/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/expo/design.tokens.json +0 -1270
- package/data/harnesses/code/skills/design/data/design-tokens/figma/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/figma/design.tokens.json +0 -1276
- package/data/harnesses/code/skills/design/data/design-tokens/framer/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/framer/design.tokens.json +0 -1267
- package/data/harnesses/code/skills/design/data/design-tokens/goldens.json +0 -251
- package/data/harnesses/code/skills/design/data/design-tokens/hashicorp/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/hashicorp/design.tokens.json +0 -1273
- package/data/harnesses/code/skills/design/data/design-tokens/ibm/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/ibm/design.tokens.json +0 -1286
- package/data/harnesses/code/skills/design/data/design-tokens/intercom/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/intercom/design.tokens.json +0 -1290
- package/data/harnesses/code/skills/design/data/design-tokens/kraken/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/kraken/design.tokens.json +0 -1270
- package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.resolver.json +0 -23
- package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.tokens.dark.json +0 -599
- package/data/harnesses/code/skills/design/data/design-tokens/linear-app/design.tokens.json +0 -1272
- package/data/harnesses/code/skills/design/data/design-tokens/lovable/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/lovable/design.tokens.json +0 -1267
- package/data/harnesses/code/skills/design/data/design-tokens/meta/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/meta/design.tokens.json +0 -1289
- package/data/harnesses/code/skills/design/data/design-tokens/minimax/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/minimax/design.tokens.json +0 -1258
- package/data/harnesses/code/skills/design/data/design-tokens/mintlify/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/mintlify/design.tokens.json +0 -1284
- package/data/harnesses/code/skills/design/data/design-tokens/miro/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/miro/design.tokens.json +0 -1291
- package/data/harnesses/code/skills/design/data/design-tokens/mistral-ai/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/mistral-ai/design.tokens.json +0 -1263
- package/data/harnesses/code/skills/design/data/design-tokens/mongodb/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/mongodb/design.tokens.json +0 -1270
- package/data/harnesses/code/skills/design/data/design-tokens/notion/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/notion/design.tokens.json +0 -1261
- package/data/harnesses/code/skills/design/data/design-tokens/nurix/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/nurix/design.tokens.json +0 -1209
- package/data/harnesses/code/skills/design/data/design-tokens/nvidia/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/nvidia/design.tokens.json +0 -1265
- package/data/harnesses/code/skills/design/data/design-tokens/ollama/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/ollama/design.tokens.json +0 -1253
- package/data/harnesses/code/skills/design/data/design-tokens/opencode-ai/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/opencode-ai/design.tokens.json +0 -1268
- package/data/harnesses/code/skills/design/data/design-tokens/posthog/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/posthog/design.tokens.json +0 -1261
- package/data/harnesses/code/skills/design/data/design-tokens/raycast/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/raycast/design.tokens.json +0 -1263
- package/data/harnesses/code/skills/design/data/design-tokens/replicate/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/replicate/design.tokens.json +0 -1266
- package/data/harnesses/code/skills/design/data/design-tokens/resend/design.resolver.json +0 -23
- package/data/harnesses/code/skills/design/data/design-tokens/resend/design.tokens.dark.json +0 -623
- package/data/harnesses/code/skills/design/data/design-tokens/resend/design.tokens.json +0 -1276
- package/data/harnesses/code/skills/design/data/design-tokens/revolut/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/revolut/design.tokens.json +0 -1264
- package/data/harnesses/code/skills/design/data/design-tokens/runwayml/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/runwayml/design.tokens.json +0 -1268
- package/data/harnesses/code/skills/design/data/design-tokens/sanity/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/sanity/design.tokens.json +0 -1270
- package/data/harnesses/code/skills/design/data/design-tokens/sentry/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/sentry/design.tokens.json +0 -1288
- package/data/harnesses/code/skills/design/data/design-tokens/shopify/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/shopify/design.tokens.json +0 -1272
- package/data/harnesses/code/skills/design/data/design-tokens/slack/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/slack/design.tokens.json +0 -1265
- package/data/harnesses/code/skills/design/data/design-tokens/spacex/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/spacex/design.tokens.json +0 -1287
- package/data/harnesses/code/skills/design/data/design-tokens/spotify/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/spotify/design.tokens.json +0 -1286
- package/data/harnesses/code/skills/design/data/design-tokens/stripe/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/stripe/design.tokens.json +0 -1285
- package/data/harnesses/code/skills/design/data/design-tokens/supabase/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/supabase/design.tokens.json +0 -1287
- package/data/harnesses/code/skills/design/data/design-tokens/superhuman/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/superhuman/design.tokens.json +0 -1278
- package/data/harnesses/code/skills/design/data/design-tokens/tesla/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/tesla/design.tokens.json +0 -1269
- package/data/harnesses/code/skills/design/data/design-tokens/theverge/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/theverge/design.tokens.json +0 -1285
- package/data/harnesses/code/skills/design/data/design-tokens/together-ai/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/together-ai/design.tokens.json +0 -1303
- package/data/harnesses/code/skills/design/data/design-tokens/uber/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/uber/design.tokens.json +0 -1274
- package/data/harnesses/code/skills/design/data/design-tokens/vercel/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/vercel/design.tokens.json +0 -1296
- package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.resolver.json +0 -23
- package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.tokens.dark.json +0 -612
- package/data/harnesses/code/skills/design/data/design-tokens/voltagent/design.tokens.json +0 -1282
- package/data/harnesses/code/skills/design/data/design-tokens/warp/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/warp/design.tokens.json +0 -1287
- package/data/harnesses/code/skills/design/data/design-tokens/webflow/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/webflow/design.tokens.json +0 -1268
- package/data/harnesses/code/skills/design/data/design-tokens/wired/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/wired/design.tokens.json +0 -1276
- package/data/harnesses/code/skills/design/data/design-tokens/wise/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/wise/design.tokens.json +0 -1273
- package/data/harnesses/code/skills/design/data/design-tokens/x-ai/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/x-ai/design.tokens.json +0 -1296
- package/data/harnesses/code/skills/design/data/design-tokens/zapier/design.resolver.json +0 -20
- package/data/harnesses/code/skills/design/data/design-tokens/zapier/design.tokens.json +0 -1286
- package/data/harnesses/code/skills/design/data/operator-pack/exemplars/command-center.tsx +0 -249
- package/data/harnesses/code/skills/design/data/operator-pack/exemplars/create-edit.tsx +0 -249
- package/data/harnesses/code/skills/design/data/operator-pack/exemplars/dashboard.tsx +0 -225
- package/data/harnesses/code/skills/design/data/operator-pack/exemplars/entity-detail.tsx +0 -249
- package/data/harnesses/code/skills/design/data/operator-pack/exemplars/list-detail.tsx +0 -224
- package/data/harnesses/code/skills/design/data/operator-pack/exemplars/log-stream.tsx +0 -249
- package/data/harnesses/code/skills/design/data/operator-pack/fixtures.md +0 -88
- package/data/harnesses/code/skills/design/data/operator-pack/surface-catalog.md +0 -132
- package/data/harnesses/code/skills/design/data/operator-pack/trust-rubric.md +0 -76
- package/data/harnesses/code/skills/design/references/create.md +0 -173
- package/data/harnesses/code/skills/design/references/diagnosis.md +0 -108
- package/data/harnesses/code/skills/design/references/hard-rules.md +0 -177
- package/data/harnesses/code/skills/design/references/improve.md +0 -116
- package/data/harnesses/code/skills/design/references/interaction.md +0 -77
- package/data/harnesses/code/skills/design/references/introspect.md +0 -100
- package/data/harnesses/code/skills/design/references/lifecycle.md +0 -73
- package/data/harnesses/code/skills/design/references/personality.md +0 -575
- package/data/harnesses/code/skills/design/references/structure.md +0 -159
- package/data/harnesses/code/skills/design/scripts/convert-design-md.mjs +0 -1312
- package/data/harnesses/code/skills/design/scripts/derive-personality.mjs +0 -1498
- package/data/harnesses/code/skills/design/scripts/generate-fixtures.mjs +0 -551
- package/data/harnesses/code/skills/design/scripts/lib/checks.mjs +0 -1092
- package/data/harnesses/code/skills/design/scripts/lib/golden.mjs +0 -26
- package/data/harnesses/code/skills/design/scripts/lib/vocabulary.mjs +0 -65
- package/data/harnesses/code/skills/design/scripts/phase-gate.mjs +0 -538
- package/data/harnesses/code/skills/design/scripts/preship-sweep.mjs +0 -312
- package/data/harnesses/code/skills/design/scripts/render-rung.mjs +0 -890
- package/data/harnesses/code/skills/design/scripts/scaffold.mjs +0 -769
- package/data/harnesses/code/skills/design/scripts/self-integrity.mjs +0 -675
- package/data/harnesses/code/skills/design/scripts/snapshot-goldens.mjs +0 -164
- package/data/harnesses/code/skills/design/scripts/validate-combinations.mjs +0 -439
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: Linear
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Linear — near-black product-craft operator design
|
|
9
|
-
|
|
10
|
-
## 1 Visual Theme
|
|
11
|
-
|
|
12
|
-
Linear is engineered, quiet, dense, luxurious-by-restraint, and **categorically dark** — this entry
|
|
13
|
-
inverts the operator light-default: dark is the signature theme a tool wears, and a valued light daytime
|
|
14
|
-
mode ships alongside. Flat: rank is a surface ladder (canvas → card → muted → popover) and hairline
|
|
15
|
-
`border`, never drop shadow — Linear resists shadow almost entirely. The single accent, lavender-blue
|
|
16
|
-
`primary` `#5e6ad2`, appears only on the brand mark, the one primary action, the focus `ring`, and link
|
|
17
|
-
emphasis. The neutral ramp is a cool blue-gray so the UI reads engineered, not flatly gray. Anchor
|
|
18
|
-
surface: the near-black canvas `#010102` (a true black warmed by a faint blue tint) with charcoal panels
|
|
19
|
-
a hairline above it. Density is `dense` — tight rows, minimal chrome, technical.
|
|
20
|
-
|
|
21
|
-
## 2 Color Roles
|
|
22
|
-
|
|
23
|
-
The signature is dark; both themes are valued (light listed first). One chromatic accent — `primary`
|
|
24
|
-
is the only hue that carries meaning; status hues speak only status.
|
|
25
|
-
|
|
26
|
-
| Role | Light | Dark (signature) | Allowed where |
|
|
27
|
-
| --- | --- | --- | --- |
|
|
28
|
-
| `background` / `card` / `popover` | `#ffffff` | canvas `#010102`, card `#0f1011`, popover `#18191a` | page, panels, overlays |
|
|
29
|
-
| `foreground` | `#0d0e10` | ink `#f7f8f8` | all primary ink |
|
|
30
|
-
| `muted` / `secondary` | `#f4f5f8` | `#141516` / `#0f1011` | hover fills, secondary buttons |
|
|
31
|
-
| `muted-foreground` | `#6b7280` | `#8a8f98` | labels, captions, secondary text |
|
|
32
|
-
| `border` / `input` | `#e6e7eb` / `#d9dbe0` | `#23252a` / `#34343a` | separators, grid lines, field edges |
|
|
33
|
-
| `primary` | `#5e6ad2` | `#5e6ad2` | primary action; brand mark; active nav; link emphasis |
|
|
34
|
-
| `accent` | `#eceefb` | `#1c1d2b` | selected/hovered rows — a faint lavender wash |
|
|
35
|
-
| `ring` | `#5e69d1` | `#5e69d1` | the lavender focus outline, keyboard-first |
|
|
36
|
-
| `destructive` | `#eb5757` | `#eb5757` | destructive actions and error state only |
|
|
37
|
-
| `success` / `warning` | `#27a644` / `#f2994a` | same | status only, never chrome |
|
|
38
|
-
|
|
39
|
-
Lavender hover is `#828fff`, pressed/focus `#5e69d1`; marketing's deeper ladder steps stay behind.
|
|
40
|
-
|
|
41
|
-
## 3 Typography
|
|
42
|
-
|
|
43
|
-
One sans, one mono, single continuous voice. The free operator substitute for Linear's proprietary cut
|
|
44
|
-
is **Inter** (500/600/700), fallback `SF Pro Display, -apple-system, system-ui`; `font-mono` is Geist
|
|
45
|
-
Mono (JetBrains Mono viable) for IDs, codes, timestamps, log lines. Numeric columns render
|
|
46
|
-
`tabular-nums`.
|
|
47
|
-
|
|
48
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
49
|
-
| --- | --- | --- | --- |
|
|
50
|
-
| h1 | page title | 24px / 1.25 | `font-weight-strong` · `heading-tracking` |
|
|
51
|
-
| h2 | section head | 18px / 1.3 | `font-weight-strong` · `heading-tracking` |
|
|
52
|
-
| h3 | card / group head | 15px / 1.35 | `font-weight-strong` · `-0.01em` |
|
|
53
|
-
| body | UI + prose | 14px / 1.5 | `font-weight-normal` |
|
|
54
|
-
| small | labels, dense table | 13px / 1.4 | `font-weight-normal` |
|
|
55
|
-
| eyebrow | uppercase taxonomy | 12px / 1.3 | `font-weight-strong`, `+0.4px` positive (Linear's signature contrast) |
|
|
56
|
-
| mono | IDs, codes, log lines | 13px / 1.5 | `font-weight-normal` |
|
|
57
|
-
|
|
58
|
-
Pair display 600 with body 400 — Linear resists 700+. Bump weight to emphasize, never size.
|
|
59
|
-
|
|
60
|
-
## 4 Component Stylings
|
|
61
|
-
|
|
62
|
-
- **Button** — `primary`: filled `primary` on `primary-foreground`, `radius` 8px, no pill, hover lifts
|
|
63
|
-
to `#828fff`. Secondary: `secondary` fill, 1px `border`. Ghost: transparent, `accent` on hover.
|
|
64
|
-
- **Input** — `background` fill, 1px `input` edge, `radius`; focus draws the lavender `ring` at 2px, no
|
|
65
|
-
glow.
|
|
66
|
-
- **Card** — `card` a hairline above canvas, 1px `border`, `radius` steps to 12px for large panels;
|
|
67
|
-
shadow only when it must truly lift.
|
|
68
|
-
- **Table row** — height `table-row-height` (dense); `border` grid; `muted` on hover; selection tints
|
|
69
|
-
`accent`; `tabular-nums` on numerics.
|
|
70
|
-
- **Side panel** — entity detail opens beside the work (`side-panel-width` / `side-panel-width-rich`),
|
|
71
|
-
never over it.
|
|
72
|
-
- **Badge** — hairline `border`, `muted`/status fill, uppercase eyebrow; status badges take
|
|
73
|
-
`success` / `warning` / `destructive`, never `primary`.
|
|
74
|
-
|
|
75
|
-
## 5 Layout
|
|
76
|
-
|
|
77
|
-
Base unit 4px; on-scale ramp `2 · 4 · 8 · 12 · 16 · 24 · 32 · 48 · 64` (marketing's 96px section gap
|
|
78
|
-
stays behind). Shell maps one-to-one to the layout primitives: sidebar `sidebar-width-expanded` /
|
|
79
|
-
`sidebar-width-collapsed`, topbar `topbar-height`, side panel `side-panel-width` /
|
|
80
|
-
`side-panel-width-rich`, modal `modal-width-max`, forms `form-max-width`, tables full-width. Density is
|
|
81
|
-
`dense` globally (compact ~8px/14px button padding), stepped per archetype by the surface catalog.
|
|
82
|
-
|
|
83
|
-
## 6 Depth
|
|
84
|
-
|
|
85
|
-
Flat — rank from the surface ladder and hairlines, not shadow. **0 canvas** `background` (`#010102`
|
|
86
|
-
dark / white light), no border. **1 panel** `card` a hairline above canvas on a 1px `border`, with a
|
|
87
|
-
faint top-edge highlight; shadow only when it must lift. **2 overlay** `popover` / side panel / modal —
|
|
88
|
-
the rare soft shadow on light, a deeper surface step on dark. Focus is a 2px lavender `ring` (never a
|
|
89
|
-
glow), always visible. Three z-levels: content, sticky chrome, overlay.
|
|
90
|
-
|
|
91
|
-
## 7 Do's & Don'ts
|
|
92
|
-
|
|
93
|
-
- **Do** default to dark — it is Linear's identity; ship light as an equal daytime mode, not the primary.
|
|
94
|
-
- **Do** reserve lavender `primary` for the brand mark, the one primary action, focus, and link
|
|
95
|
-
emphasis — nowhere else.
|
|
96
|
-
- **Do** carry hierarchy with the surface ladder, hairlines, and weight; don't skip ladder steps.
|
|
97
|
-
- **Do** apply `tabular-nums` to numeric columns and `font-mono` to IDs, codes, timestamps.
|
|
98
|
-
- **Don't** use lavender as a background or card fill, or add a second chromatic accent.
|
|
99
|
-
- **Don't** use pure `#000000` — the faint blue tint of `#010102` is intentional.
|
|
100
|
-
- **Don't** pill the CTA, reach past `radius-scale`, or signal elevation with heavy shadows.
|
|
101
|
-
|
|
102
|
-
## 8 Responsive
|
|
103
|
-
|
|
104
|
-
The operator sweep is 375 / 768 / 1024 / 1440.
|
|
105
|
-
|
|
106
|
-
| Breakpoint | What changes |
|
|
107
|
-
| --- | --- |
|
|
108
|
-
| 375 | sidebar → drawer; two-pane stacks; side panel → full sheet; density holds |
|
|
109
|
-
| 768 | sidebar → icon rail (`sidebar-width-collapsed`); tables scroll overflow; nav → hamburger |
|
|
110
|
-
| 1024 | sidebar expands; two-pane queue+detail holds side by side |
|
|
111
|
-
| 1440 | forms cap at `form-max-width`; tables and dashboards use full width |
|
|
112
|
-
|
|
113
|
-
## 9 Agent Prompt Guide
|
|
114
|
-
|
|
115
|
-
- Wear the dark theme by default (`data-theme="dark"`); light is the opt-in daytime mode.
|
|
116
|
-
- Lead every list surface with its dense table; lead every entity with its primary read, not chrome.
|
|
117
|
-
- Accent only the primary action, brand mark, focus, and links — if two things want lavender, one is
|
|
118
|
-
not primary. Carry depth with the surface ladder and hairlines; past a hairline only for a true overlay.
|
|
119
|
-
- Detail and edit go in the side panel; a modal is a confirmation, not a workspace. Every numeric column
|
|
120
|
-
is `tabular-nums`; every ID / code / timestamp is `font-mono`; the `ring` is always visible.
|
|
121
|
-
- Leave marketing behind: hero display (40–80px), the -3px display tracking, product screenshots as the
|
|
122
|
-
page protagonist, 96px section rhythm, pill toggles, the inverse-white CTA.
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: Lovable
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Lovable — warm parchment operator design
|
|
9
|
-
|
|
10
|
-
An operator reading of Lovable's warm, humanist brand. This entry keeps what carries onto a dense
|
|
11
|
-
internal tool — the cream-and-charcoal palette, the opacity-derived neutral ramp, the soft warm
|
|
12
|
-
radius character, the humanist type voice, the flat border-over-shadow depth — and leaves the
|
|
13
|
-
marketing behind: hero-scale display type, negative tracking at 48–60px, the gradient washes, the
|
|
14
|
-
96–208px editorial section spacing. Light by default; a single achromatic accent (charcoal
|
|
15
|
-
`primary`) does the emphasis work.
|
|
16
|
-
|
|
17
|
-
## 1 Visual Theme
|
|
18
|
-
|
|
19
|
-
Warm, flat, parchment operator console. The canvas is a deliberate cream (`background` `#f7f4ed`), never
|
|
20
|
-
pure white — the brand's signature warmth carried onto the tool. Ink is a near-black charcoal
|
|
21
|
-
(`foreground` `#1c1c1c`), organic rather than clinical. Hierarchy comes from warm hairline `border`, type
|
|
22
|
-
weight, and charcoal-on-cream contrast — never heavy shadow. The one accent is achromatic: `primary` is
|
|
23
|
-
charcoal itself, reserved for the single most important action. Every neutral is one hue — charcoal at
|
|
24
|
-
varying opacity over cream — so the surface reads tonally unified. The anchor surface is a cream canvas
|
|
25
|
-
beside a faintly deeper cream `sidebar`. Density is `standard`.
|
|
26
|
-
|
|
27
|
-
## 2 Color Roles
|
|
28
|
-
|
|
29
|
-
Light values first. One accent — `primary` is charcoal, the only role that carries emphasis; status hues
|
|
30
|
-
speak only status. Neutrals derive from `#1c1c1c` at low opacity over cream, which is why they read warm.
|
|
31
|
-
|
|
32
|
-
| Role | Value | Allowed where |
|
|
33
|
-
| --- | --- | --- |
|
|
34
|
-
| `background` / `card` | cream `#f7f4ed` | page and cards — the dominant surface; cards seat on hairlines, not a fill shift |
|
|
35
|
-
| `foreground` | charcoal `#1c1c1c` | all primary ink and headings |
|
|
36
|
-
| `muted` | warm tint `#eeebe5` (charcoal ~4% over cream) | hover rows, subtle fills, secondary surfaces |
|
|
37
|
-
| `muted-foreground` | muted gray `#5f5f5d` | labels, captions, secondary text |
|
|
38
|
-
| `border` / `input` | light cream `#eceae4` | every separator, grid line, card edge, and field edge |
|
|
39
|
-
| `primary` | charcoal `#1c1c1c` | the one primary action; active nav; key interactive detail |
|
|
40
|
-
| `primary-foreground` | off-white `#fcfbf8` | text/icon on charcoal fills |
|
|
41
|
-
| `accent` | warm tint `#eeebe5` | selected/hovered rows and nav |
|
|
42
|
-
| `ring` | ring blue `#3b82f6` | the keyboard focus outline — the one cool element, an accessibility affordance, not a brand accent |
|
|
43
|
-
| `destructive` | warm red `#c0392b` | destructive actions and error state only |
|
|
44
|
-
| `success` / `warning` | sage `#4f7a3f` / ochre `#c08a2d` | status signalling only, never chrome |
|
|
45
|
-
|
|
46
|
-
Interactive borders may step to a stronger charcoal-40% edge (`rgba(28,28,28,0.4)`); passive containment stays `#eceae4`.
|
|
47
|
-
|
|
48
|
-
## 3 Typography
|
|
49
|
-
|
|
50
|
-
One sans, one mono. `font-sans` is Camera Plain Variable — a humanist face with rounded terminals that
|
|
51
|
-
gives the tool its warmth; the UI, body, and headings all ride it (`ui-sans-serif, system-ui` fallbacks).
|
|
52
|
-
Weight range is narrow: 400 for body/UI, 600 for headings (600 is the ceiling — never 700). `font-mono`
|
|
53
|
-
is derived (no brand mono documented) for IDs, codes, timestamps, and log lines. Numeric columns render
|
|
54
|
-
`tabular-nums` so figures align down a column (floor f04).
|
|
55
|
-
|
|
56
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
57
|
-
| --- | --- | --- | --- |
|
|
58
|
-
| h1 | page title | 24px / 1.25 | `font-weight-strong` · `heading-tracking` |
|
|
59
|
-
| h2 | section head | 18px / 1.3 | `font-weight-strong` · `heading-tracking` |
|
|
60
|
-
| h3 | card / group head | 15px / 1.35 | `font-weight-strong` |
|
|
61
|
-
| body | UI + prose | 14px / 1.5 | `font-weight-normal` |
|
|
62
|
-
| small | labels, meta, dense table | 13px / 1.4 | `font-weight-normal` |
|
|
63
|
-
| caption | eyebrow, metadata | 12px / 1.3 | `font-weight-normal` |
|
|
64
|
-
|
|
65
|
-
The marketing hero ramp (36–60px, weight 480/600, tracking −0.9px to −1.5px) stays behind; the operator
|
|
66
|
-
ramp tops out at 24px. Bump weight for 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 charcoal `primary` on `primary-foreground`, `radius`, no pill. The
|
|
73
|
-
signature inset shadow (a white highlight line above, a dark hairline and soft drop below) rides
|
|
74
|
-
`shadow-intensity` for a pressed-into-surface feel. Secondary: `secondary` fill, `border`, `foreground`.
|
|
75
|
-
Ghost: transparent, `accent` on hover.
|
|
76
|
-
- **Input** — `background` fill, 1px `border` (`border-weight`), `radius`; focus draws the `ring` outline.
|
|
77
|
-
- **Card** — `card` surface, 1px `border`, `radius` at the card step; no shadow by default — the warm
|
|
78
|
-
hairline is the containment mechanism; inset by `density-inset`.
|
|
79
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
|
|
80
|
-
numeric columns; row selection tints `accent`.
|
|
81
|
-
- **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`),
|
|
82
|
-
beside the work, not over it (floor f03).
|
|
83
|
-
- **Badge** — hairline `border`, `muted`/status fill; status badges take `success` / `warning` /
|
|
84
|
-
`destructive`, never `primary`. The full-pill `9999px` radius is reserved for icon toggles only.
|
|
85
|
-
|
|
86
|
-
## 5 Layout
|
|
87
|
-
|
|
88
|
-
Base spacing unit 8px; the operator ramp is `4 · 8 · 12 · 16 · 24 · 32 · 40 · 56 · 80` (the editorial
|
|
89
|
-
96–208px expanses stay behind). Shell dimensions map one-to-one to the layout primitives: sidebar
|
|
90
|
-
`sidebar-width-expanded` / `sidebar-width-collapsed`, topbar `topbar-height`, side panel
|
|
91
|
-
`side-panel-width` / `side-panel-width-rich`, modal cap `modal-width-max`, forms `form-max-width`, tables
|
|
92
|
-
full-width. Density is governed globally by `density-tier` (rewriting the scale through `density-gap`)
|
|
93
|
-
and stepped per archetype by the surface catalog — never by absolute overrides.
|
|
94
|
-
|
|
95
|
-
## 6 Depth
|
|
96
|
-
|
|
97
|
-
Flat and shallow. Hierarchy comes from the warm hairline against the cream surface, not shadow:
|
|
98
|
-
|
|
99
|
-
- **0 — canvas** `background`, no border.
|
|
100
|
-
- **1 — panel / card** `card` on a 1px `#eceae4` border; no shadow — warm borders do the containment.
|
|
101
|
-
- **2 — overlay** `popover` / side panel / modal lifts a half-step to off-white and earns a single soft,
|
|
102
|
-
diffused shadow (`shadow-intensity` → `md`) — the brand's warm glow, never a sharp drop.
|
|
103
|
-
|
|
104
|
-
Focus is the `ring` outline on every interactive element (floor f06); the soft warm focus shadow
|
|
105
|
-
(`rgba(0,0,0,0.1) 0px 4px 12px`) is the active-state treatment. Three z-levels: content, chrome, overlay.
|
|
106
|
-
|
|
107
|
-
## 7 Do's & Don'ts
|
|
108
|
-
|
|
109
|
-
- **Do** keep the cream `background` (`#f7f4ed`) as the foundation — never pure white; the warmth is the brand.
|
|
110
|
-
- **Do** derive every neutral from charcoal at low opacity for tonal unity, not arbitrary grays.
|
|
111
|
-
- **Do** reserve charcoal `primary` for the single most important action; everything else is neutral or status.
|
|
112
|
-
- **Do** carry containment with the `#eceae4` hairline, not a shadow.
|
|
113
|
-
- **Do** apply `tabular-nums` to every numeric column and `font-mono` to IDs, codes, and timestamps.
|
|
114
|
-
- **Don't** introduce a saturated chromatic accent — the palette is warm-neutral; the blue `ring` is an
|
|
115
|
-
accessibility affordance, not license for a second accent.
|
|
116
|
-
- **Don't** use weight 700 (600 is the ceiling), pill a rectangular button, signal elevation with heavy
|
|
117
|
-
drop shadows, or open detail/edit in a modal when the side panel fits.
|
|
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 | forms cap at `form-max-width`; tables and dashboards use the full width |
|
|
129
|
-
|
|
130
|
-
## 9 Agent Prompt Guide
|
|
131
|
-
|
|
132
|
-
What carries from Lovable onto an operator tool, and what stays behind:
|
|
133
|
-
|
|
134
|
-
- **Reach for first**: the cream `background` and charcoal `foreground`, plus the humanist Camera Plain voice — this brand is defined by warmth.
|
|
135
|
-
- **One accent, achromatic**: charcoal `primary` is the emphasis (if two things want it, one is not
|
|
136
|
-
primary); derive every muted fill and border from charcoal-over-cream, never a cold gray.
|
|
137
|
-
- **Flat before lifted**: warm `#eceae4` hairline before any shadow; reach past it only for a real overlay, and then only the soft diffused glow.
|
|
138
|
-
- **Numbers**: every numeric column is `tabular-nums`; every ID / code / timestamp is `font-mono` (f04).
|
|
139
|
-
- **Keyboard-first**: every workflow completes from the keyboard; the `ring` focus outline is always visible (f06).
|
|
140
|
-
- **Left behind** (marketing only): hero type at 36–60px, display-scale negative tracking, the gradient washes, the 96–208px editorial spacing. Warmth comes from palette and type, not lavish gaps.
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: Meta
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Meta — the stark-white, cobalt-accent operator reading
|
|
9
|
-
|
|
10
|
-
An operator translation of Meta's hardware-commerce design language (Quest, Ray-Ban Meta glasses).
|
|
11
|
-
The merchandising theatre stays behind: the 64px Optimistic hero display, full-bleed photography,
|
|
12
|
-
the dual-CTA hero, the black-pill marketing CTA, the 80/120px rhythm. What carries is the chassis
|
|
13
|
-
underneath — a stark white canvas (`#ffffff`), a single saturated cobalt accent (`#0064e0`, Meta's
|
|
14
|
-
own buy-now color promoted to the operator primary), a cool blue-gray neutral temperature,
|
|
15
|
-
Optimistic VF's snug geometric-humanist voice, moderate rounding, and Facebook-Blue focus.
|
|
16
|
-
|
|
17
|
-
## 1 Visual Theme
|
|
18
|
-
|
|
19
|
-
Light by default; dark is opt-in (Meta ships no dark tokens — light is the whole thesis). Stark white
|
|
20
|
-
`background` (`#ffffff`) is the identity — the brand's photography-carrying ground, kept pure-white here.
|
|
21
|
-
Flat: hierarchy comes from a cool hairline `border`, type weight, and the two-layer elevation Meta
|
|
22
|
-
actually uses — never a decorative shadow. A single accent, cobalt `primary` (`#0064e0`) — Meta's scarce
|
|
23
|
-
commerce buy-now color — is the only chromatic hue that carries meaning. Ink is a deep cool near-black
|
|
24
|
-
`foreground` (`#0a1317`) leaning faintly blue, so the neutrals read cool, not warm-gray. The anchor
|
|
25
|
-
surface is a white content canvas beside a faintly cool-tinted `sidebar`. Density is `standard` — Meta's
|
|
26
|
-
marketing breathes, but its commerce configurator runs dense, and the operator reading takes its pace.
|
|
27
|
-
|
|
28
|
-
## 2 Color Roles
|
|
29
|
-
|
|
30
|
-
Light values first (hex, the corpus's native format). One accent — `primary` is the only chromatic hue that carries meaning; the status hues speak only status.
|
|
31
|
-
|
|
32
|
-
| Role | Value | Allowed where |
|
|
33
|
-
| --- | --- | --- |
|
|
34
|
-
| `background` / `card` / `popover` | stark white `#ffffff` | page, cards, and overlays — the dominant surface, differentiated by border not brightness |
|
|
35
|
-
| `foreground` | deep cool ink `#0a1317` | all primary ink and headlines |
|
|
36
|
-
| `muted` / `secondary` | soft cool cloud `#f1f4f7` / `#e9edf2` | hover rows, subtle fills, secondary button fill |
|
|
37
|
-
| `muted-foreground` | steel blue-gray `#5d6c7b` | labels, captions, secondary text |
|
|
38
|
-
| `border` | soft hairline `#dee3e9` | every separator, grid line, and card edge |
|
|
39
|
-
| `input` | firmer control gray `#ced0d4` | field edges — one notch firmer than the divider hairline |
|
|
40
|
-
| `primary` | cobalt `#0064e0` | the one primary action; active nav; the key interactive detail |
|
|
41
|
-
| `accent` | cobalt tint `#e6f0fc` | selected / hovered rows and nav — selection tints cobalt, never fills it |
|
|
42
|
-
| `ring` | Facebook Blue `#1876f2` | the 2px focus outline — Meta's exact input-focus hue, one notch brighter than cobalt |
|
|
43
|
-
| `destructive` | critical red `#e41e3f` | destructive actions and error state only |
|
|
44
|
-
| `success` / `warning` | green `#31a24c` / amber `#f2a918` | status signalling only, never chrome |
|
|
45
|
-
|
|
46
|
-
The black marketing pill (`#000000`), Oculus purple (`#a121ce`), and promo yellow (`#f7b928`) are brand graces off the operator palette: the black CTA and dual-CTA grammar stay behind (§7), purple lives only in charts, and promo yellow fails as status on white (status takes the amber `warning`).
|
|
47
|
-
|
|
48
|
-
## 3 Typography
|
|
49
|
-
|
|
50
|
-
One display sans, one derived mono. `font-sans` is Optimistic VF — Meta's variable face — with the
|
|
51
|
-
corpus's Montserrat fallback and Inter added for dense-body legibility; UI, body, and headings all ride
|
|
52
|
-
it, weight and Optimistic's `ss01`/`ss02` sets carrying the humanist voice, not a second family. The
|
|
53
|
-
64/48px hero and display sizes stay behind; the operator ramp keeps the face at working sizes. Optimistic
|
|
54
|
-
is drawn snug — body carries a `-0.14` to `-0.16px` negative tracking, reflected in the ramp as a light
|
|
55
|
-
`-0.01em`. `font-mono` is a derived Roboto Mono for IDs, codes, timestamps; numeric columns render `tabular-nums`.
|
|
56
|
-
|
|
57
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
58
|
-
| --- | --- | --- | --- |
|
|
59
|
-
| h1 | page title | 28px / 1.21 | `font-weight-strong` · `heading-tracking` |
|
|
60
|
-
| h2 | section head | 24px / 1.25 | `font-weight-strong` · `heading-tracking` |
|
|
61
|
-
| h3 | card / group head | 18px / 1.44 | `font-weight-strong` · 0 |
|
|
62
|
-
| body | UI + prose | 16px / 1.5 | `font-weight-normal` · `-0.01em` |
|
|
63
|
-
| small | labels, meta, dense table | 14px / 1.43 | `font-weight-normal` · `-0.01em` |
|
|
64
|
-
| caption | uppercase eyebrow | 12px / 1.33 | `font-weight-strong`, `+0.02em`, uppercase |
|
|
65
|
-
| code | IDs, codes, timestamps | 13px / 1.5 | `font-weight-normal` |
|
|
66
|
-
|
|
67
|
-
Body runs at 16px, not 14 — Meta's `body-md` reading pace; emphasise by weight, never size.
|
|
68
|
-
|
|
69
|
-
## 4 Component Stylings
|
|
70
|
-
|
|
71
|
-
Every recurring operator component composes from the primitives — no literal values.
|
|
72
|
-
|
|
73
|
-
- **Button** — `primary`: filled cobalt on `primary-foreground`, `radius` (8px rect), no pill; press
|
|
74
|
-
deepens the cobalt. Secondary: `secondary` fill, 1px `border`. Ghost: transparent, `accent` on hover.
|
|
75
|
-
- **Input** — `background` fill, 1px `border` (the firmer `input` gray), `radius`; focus draws the `ring`
|
|
76
|
-
in Facebook Blue at 2px, no glow.
|
|
77
|
-
- **Card** — white `card` on a 1px `border`; panels read by hairline, not brightness (nothing sits
|
|
78
|
-
lighter than the canvas); shadow only when lifted; inset by `density-inset`.
|
|
79
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
|
|
80
|
-
numeric columns; row selection tints `accent`.
|
|
81
|
-
- **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`
|
|
82
|
-
for content-heavy), beside the work, not over it.
|
|
83
|
-
- **Badge** — pill radius (`9999`, the one place Meta's signature pill survives), `muted`/status fill,
|
|
84
|
-
uppercase caption; status badges take `success` / `warning` / `destructive`, never `primary`.
|
|
85
|
-
|
|
86
|
-
## 5 Layout
|
|
87
|
-
|
|
88
|
-
Base spacing unit 4px with 8px as the dominant step (Meta's grid); the on-scale ramp is `4 · 8 · 12 · 16
|
|
89
|
-
· 24 · 32 · 48 · 64` — the 80/120px marketing rhythm stays behind. Shell dimensions map one-to-one to the
|
|
90
|
-
layout primitives: sidebar `sidebar-width-expanded` / `sidebar-width-collapsed`, topbar `topbar-height`,
|
|
91
|
-
side panel `side-panel-width` / `side-panel-width-rich` (the corpus PDP purchase rail informs the width),
|
|
92
|
-
modal cap `modal-width-max`, forms `form-max-width`, tables full-width. Density is governed globally by
|
|
93
|
-
`density-tier`, stepped per archetype by the surface catalog — never by absolute overrides.
|
|
94
|
-
|
|
95
|
-
## 6 Depth
|
|
96
|
-
|
|
97
|
-
Flat, with Meta's exact two-layer elevation:
|
|
98
|
-
|
|
99
|
-
- **0 — canvas** `background` (`#ffffff`), no border.
|
|
100
|
-
- **1 — panel / card** white `card` on a 1px `border`; the hairline is the divider, not a shadow. A faint
|
|
101
|
-
`sm` lift only when a control must read as raised (Meta's pill-tab-active indicator).
|
|
102
|
-
- **2 — overlay** `popover` / side panel / modal / sticky rail — the one place `shadow-intensity` earns a
|
|
103
|
-
soft `md` shadow (Meta's `rgba(20,22,26,0.3) 0 1px 4px`). Rank is border and position, never a heavier shadow.
|
|
104
|
-
|
|
105
|
-
Focus is a 2px Facebook-Blue `ring` outline (never a glow), on every interactive element. Three z-levels: content, sticky chrome, overlay.
|
|
106
|
-
|
|
107
|
-
## 7 Do's & Don'ts
|
|
108
|
-
|
|
109
|
-
- **Do** anchor on the stark white canvas — Meta's whole thesis; cards differentiate by hairline, not tint.
|
|
110
|
-
- **Do** reserve cobalt `primary` for the single most important action; its weight is meaningful because scarce.
|
|
111
|
-
- **Do** keep the neutrals cool — ink and grays lean faintly blue (`#0a1317`, `#5d6c7b`), never warm-gray.
|
|
112
|
-
- **Do** apply `tabular-nums` to numeric columns, `font-mono` to IDs/codes/timestamps, and set the type snug.
|
|
113
|
-
- **Don't** promote the black marketing pill or dual-CTA hero grammar — one cobalt accent, not a two-CTA pair.
|
|
114
|
-
- **Don't** pill every control — the 100px pill is a marketing signal; controls take the 8px `radius` rect, pill (`9999`) for badges.
|
|
115
|
-
- **Don't** promote a second chromatic accent — Oculus purple stays in charts, promo yellow stays behind.
|
|
116
|
-
- **Don't** signal elevation with heavy drop shadows, or open detail in a modal when the side panel fits.
|
|
117
|
-
|
|
118
|
-
## 8 Responsive
|
|
119
|
-
|
|
120
|
-
The operator sweep is 375 / 768 / 1024 / 1440.
|
|
121
|
-
|
|
122
|
-
| Breakpoint | What changes |
|
|
123
|
-
| --- | --- |
|
|
124
|
-
| 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
|
|
125
|
-
| 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
|
|
126
|
-
| 1024 | sidebar expands; two-pane queue+detail holds side by side |
|
|
127
|
-
| 1440 | forms cap at `form-max-width`; tables and dashboards use the full width |
|
|
128
|
-
|
|
129
|
-
## 9 Agent Prompt Guide
|
|
130
|
-
|
|
131
|
-
- **Carries:** the stark white `#ffffff` canvas; the single cobalt `#0064e0` accent; the cool blue-gray
|
|
132
|
-
neutral temperature; Optimistic VF's geometric-humanist voice (Montserrat / Inter fallback, `ss01`+`ss02`
|
|
133
|
-
on headings) with snug tracking; the 8px control radius; the Facebook-Blue focus ring; the 16px pace.
|
|
134
|
-
- **Stays behind:** the 64/48px hero and display type; full-bleed product photography; the black-pill and
|
|
135
|
-
dual-CTA hero grammar; pill-everything (100px) controls; the promo banner; the 80/120px section rhythm.
|
|
136
|
-
- Lead every list surface with its table; lead every entity with its primary read, not its chrome.
|
|
137
|
-
- Accent only the primary action in cobalt. If two things want the accent, one of them is not primary.
|
|
138
|
-
- Every numeric column is `tabular-nums`; every ID / code / timestamp is `font-mono`; keep the type snug.
|
|
139
|
-
- Every workflow completes from the keyboard; the Facebook-Blue `ring` focus outline is always visible.
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: MiniMax
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# MiniMax — operator reading of the AI-infrastructure brand
|
|
9
|
-
|
|
10
|
-
The design a project wears when it names or resembles MiniMax and the user confirms the match. A
|
|
11
|
-
*deliberate* operator reading, not a marketing transcription: MiniMax's public surfaces are stark
|
|
12
|
-
monochrome broken open by vibrant gradient product cards and an oversized 80px hero display. An
|
|
13
|
-
operator surface keeps the monochrome bones, the near-black signature action, and the DM Sans voice
|
|
14
|
-
— and leaves the gradients, the pill-everything CTA, and the hero-scale type behind.
|
|
15
|
-
|
|
16
|
-
## 1 Visual Theme
|
|
17
|
-
|
|
18
|
-
Light by default; dark is opt-in. Stark and flat: hierarchy comes from hairline `border`, type weight,
|
|
19
|
-
and near-black ink on a white canvas — never heavy shadow. The single most important action wears the
|
|
20
|
-
brand's signature near-black fill (`primary`, `#0a0a0a`) — the black pill is MiniMax's most recognizable
|
|
21
|
-
element, though in operator work it takes the rectangular `radius`, not the marketing pill. One chromatic
|
|
22
|
-
accent — a deep blue (`ring`, `#1d4ed8`) — is reserved for focus, links, and form activation; chrome
|
|
23
|
-
otherwise stays monochrome. The vibrant product palette (coral, magenta, blue, purple, cyan) never
|
|
24
|
-
touches chrome — it reappears only in charts. The anchor surface is a white content canvas beside a
|
|
25
|
-
faintly tinted `sidebar`. Density is `standard`.
|
|
26
|
-
|
|
27
|
-
## 2 Color Roles
|
|
28
|
-
|
|
29
|
-
Light values first. One chromatic accent — deep blue carries interactivity, near-black `primary` carries
|
|
30
|
-
the primary action, status hues speak only status, and the brand's saturated palette lives in `chart-*`
|
|
31
|
-
and nowhere else in the chrome.
|
|
32
|
-
|
|
33
|
-
| Role | Value | Allowed where |
|
|
34
|
-
| --- | --- | --- |
|
|
35
|
-
| `background` / `card` / `popover` | canvas white `#ffffff` | page, cards, overlays — the dominant surface |
|
|
36
|
-
| `foreground` | near-black ink `#0a0a0a` | all primary ink, headlines, the primary CTA fill |
|
|
37
|
-
| `muted` / `secondary` | surface `#f7f8fa` | subtle fills, secondary buttons, hover rows |
|
|
38
|
-
| `muted-foreground` | steel `#5f5f5f` | labels, captions, table headers, inactive nav |
|
|
39
|
-
| `border` / `input` | hairline `#e5e7eb` | every separator, grid line, and field edge |
|
|
40
|
-
| `primary` / `primary-foreground` | near-black `#0a0a0a` on white `#ffffff` | the one primary action; active nav marker |
|
|
41
|
-
| `accent` | surface-soft `#f2f3f5` | selected/active rows and nav — neutral, never chromatic |
|
|
42
|
-
| `ring` | deep blue `#1d4ed8` | the focus outline; also links and form activation |
|
|
43
|
-
| `destructive` | soft red `#d45656` | destructive actions and error state only |
|
|
44
|
-
| `success` / `warning` | green `#1ba673` / amber `#d97706` | status signalling only, never chrome |
|
|
45
|
-
|
|
46
|
-
The vibrant brand colors — coral `#ff5530`, magenta `#ea5ec1`, blue `#1456f0`, purple `#a855f7`, cyan
|
|
47
|
-
`#3daeff` — are product-identity graces on marketing; here they seed only the `chart-*` ramp (§7).
|
|
48
|
-
|
|
49
|
-
## 3 Typography
|
|
50
|
-
|
|
51
|
-
One sans, one mono. `font-sans` is DM Sans — UI, body, and headings all ride it; the brand mixes no
|
|
52
|
-
second sans, and emphasis comes from weight (400 / 500 / 600 / 700). `font-mono` is a system monospace
|
|
53
|
-
for IDs, codes, timestamps, and log lines (the brand ships no dedicated mono). Numeric columns render
|
|
54
|
-
`tabular-nums` so figures align down a column (floor f04).
|
|
55
|
-
|
|
56
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
57
|
-
| --- | --- | --- | --- |
|
|
58
|
-
| h1 | page title | 24px / 1.3 | `font-weight-strong` · `heading-tracking` |
|
|
59
|
-
| h2 | section head | 20px / 1.4 | `font-weight-strong` · `heading-tracking` |
|
|
60
|
-
| h3 | card / group head | 16px / 1.5 | `font-weight-strong` |
|
|
61
|
-
| body | UI + prose | 14px / 1.5 | `font-weight-normal` |
|
|
62
|
-
| small | labels, meta, dense | 13px / 1.5 | `font-weight-normal` |
|
|
63
|
-
| caption | uppercase eyebrow | 12px / 1.5 | `font-weight-strong`, `+0.02em`, uppercase |
|
|
64
|
-
|
|
65
|
-
The display voice is aggressive negative tracking (-2px at 80px); at operator heading sizes that becomes
|
|
66
|
-
a mild `heading-tracking`. Bump weight one step for emphasis; never change size.
|
|
67
|
-
|
|
68
|
-
## 4 Component Stylings
|
|
69
|
-
|
|
70
|
-
Every recurring operator component composes from the primitives — no literal values.
|
|
71
|
-
- **Button** — `primary`: filled near-black `primary` on `primary-foreground`, rectangular `radius`, no
|
|
72
|
-
pill. Secondary: transparent with a `foreground` `border`. Tertiary: `card` fill with hairline `border`.
|
|
73
|
-
- **Input** — `background` fill, 1px `border`, `radius`; focus switches the edge to a 2px `ring` (deep
|
|
74
|
-
blue), no glow.
|
|
75
|
-
- **Card** — `card` surface, 1px `border`, `radius`, shadow only when lifted; inset by `density-inset`.
|
|
76
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
|
|
77
|
-
numeric columns; selection tints `accent` (neutral, not blue).
|
|
78
|
-
- **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`),
|
|
79
|
-
beside the work, not over it (floor f03).
|
|
80
|
-
- **Badge** — the one place the pill survives: `radius-scale` full (9999), `muted`/status fill, uppercase
|
|
81
|
-
caption. Status badges take `success` / `warning` / `destructive`, never `primary`.
|
|
82
|
-
|
|
83
|
-
## 5 Layout
|
|
84
|
-
|
|
85
|
-
Base spacing unit 4px; the on-scale ramp is `2 · 4 · 8 · 12 · 16 · 20 · 24 · 32 · 48 · 64` (MiniMax
|
|
86
|
-
uniquely carries the 20 step). Shell dimensions map one-to-one to the layout primitives: sidebar
|
|
87
|
-
`sidebar-width-expanded` / `sidebar-width-collapsed`, topbar `topbar-height`, side panel
|
|
88
|
-
`side-panel-width` / `side-panel-width-rich`, modal `modal-width-max`, forms `form-max-width`, tables
|
|
89
|
-
full-width. Density is governed globally by `density-tier`, stepped per archetype by the surface catalog.
|
|
90
|
-
|
|
91
|
-
## 6 Depth
|
|
92
|
-
|
|
93
|
-
Flat; hierarchy comes from the surface ladder and hairlines, not shadow:
|
|
94
|
-
|
|
95
|
-
- **0 — canvas** `background`, no border.
|
|
96
|
-
- **1 — panel / card** `card` on a 1px `border`; a whisper of `sm` shadow only when it must lift.
|
|
97
|
-
- **2 — overlay** `popover` / side panel / modal — the one place `shadow-intensity` earns a soft `md`
|
|
98
|
-
shadow. Rank is border and position, never a heavier shadow.
|
|
99
|
-
|
|
100
|
-
Focus is a 2px `ring` outline in deep blue (never a glow), on every interactive element (floor f06). Three
|
|
101
|
-
z-levels: content, sticky chrome, overlay.
|
|
102
|
-
|
|
103
|
-
## 7 Do's & Don'ts
|
|
104
|
-
|
|
105
|
-
- **Do** reserve near-black `primary` for the single most important action; everything else is neutral
|
|
106
|
-
or status. Carry hierarchy with hairlines, weight, and whitespace — the brand is predominantly flat.
|
|
107
|
-
- **Do** apply `tabular-nums` to every numeric column and `font-mono` to IDs, codes, and timestamps.
|
|
108
|
-
- **Do** send the vibrant brand palette to charts — the one operator place it belongs.
|
|
109
|
-
- **Don't** put a brand color on a button, badge, or large surface — off charts it breaks the monochrome discipline.
|
|
110
|
-
- **Don't** pill the operator CTA — the pill is a marketing signature; operator buttons take the
|
|
111
|
-
rectangular `radius` (badges keep the pill). Don't introduce a second display typeface.
|
|
112
|
-
- **Don't** tint selected rows or active nav with the accent blue — active states stay neutral `accent`;
|
|
113
|
-
blue is reserved for focus, links, and form activation. Don't signal elevation with heavy shadows.
|
|
114
|
-
|
|
115
|
-
## 8 Responsive
|
|
116
|
-
|
|
117
|
-
The operator sweep is 375 / 768 / 1024 / 1440.
|
|
118
|
-
|
|
119
|
-
| Breakpoint | What changes |
|
|
120
|
-
| --- | --- |
|
|
121
|
-
| 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
|
|
122
|
-
| 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
|
|
123
|
-
| 1024 | sidebar expands; two-pane queue+detail holds side by side |
|
|
124
|
-
| 1440 | content caps at `form-max-width` for forms; tables and dashboards use the full width |
|
|
125
|
-
|
|
126
|
-
## 9 Agent Prompt Guide
|
|
127
|
-
|
|
128
|
-
Directives the emitting agent follows verbatim:
|
|
129
|
-
|
|
130
|
-
- **Carries:** the monochrome bones (near-black ink on white canvas, hairline borders, flat), near-black
|
|
131
|
-
`primary` as the one signature action, the deep-blue accent for focus/links, DM Sans as the single
|
|
132
|
-
family, and the vibrant palette — but only as `chart-*`.
|
|
133
|
-
- **Stays behind:** the gradient product cards, the pill-everything CTA, and the hero-scale 80px display
|
|
134
|
-
type with -2px tracking. None of it enters operator chrome.
|
|
135
|
-
- Lead every list surface with its table; lead every entity with its primary read, not its chrome. Detail
|
|
136
|
-
and edit go in the side panel; a modal is a confirmation, not a workspace (f03).
|
|
137
|
-
- Accent only the primary action; the one chromatic accent (blue) is for focus and links.
|
|
138
|
-
- Every numeric column is `tabular-nums`; every ID / code / timestamp is `font-mono` (f04). Keyboard
|
|
139
|
-
completes every workflow; the `ring` focus outline is always visible (f06). Stay flat — hairline before shadow.
|