@nurix/etna 0.19.11 → 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/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,137 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: ElevenLabs
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# ElevenLabs — editorial voice-AI, warmed to an operator console
|
|
9
|
-
|
|
10
|
-
The operator reading of the ElevenLabs brand. Its own surfaces read like a quietly editorial print
|
|
11
|
-
magazine — off-white canvas, Waldenburg Light display at weight 300, pastel gradient orbs as the
|
|
12
|
-
only "color". This entry keeps what survives at operator scale: the warm canvas, the achromatic ink
|
|
13
|
-
accent, the warm-stone temperature, modest type weight, soft radius, and the pill on the one action.
|
|
14
|
-
The 64px hero display, the orbs, and the 96px rhythm stay behind; the five pastels return only as
|
|
15
|
-
charts.
|
|
16
|
-
|
|
17
|
-
## 1 Visual Theme
|
|
18
|
-
|
|
19
|
-
Light by default; dark is opt-in. Flat and editorial: hierarchy comes from warm hairline `border`, type
|
|
20
|
-
weight, and the stone surface ladder, never heavy shadow. The single accent is **achromatic** — a warm
|
|
21
|
-
near-black ink `primary` (`#292524`) worn as a pill on the one action that matters; there is no chromatic
|
|
22
|
-
accent at all, and that discipline carries. Ink is `foreground` (`#0c0a09`); the neutral ramp is a warm
|
|
23
|
-
stone, never the cool slate the category defaults to. The type voice is editorial (a light serif over
|
|
24
|
-
Inter — see §3). Density is `spacious` — the print-magazine calm honored, not crammed. The anchor surface
|
|
25
|
-
is an off-white `background` (`#f5f5f5`) holding white cards, beside a warm `sidebar` (`#f0efed`).
|
|
26
|
-
|
|
27
|
-
## 2 Color Roles
|
|
28
|
-
|
|
29
|
-
Light values. One accent, and it is not a hue: `primary` is warm near-black ink; the pastel orbs are
|
|
30
|
-
demoted to chart series and status speaks status.
|
|
31
|
-
|
|
32
|
-
| Role | Value | Allowed where |
|
|
33
|
-
| --- | --- | --- |
|
|
34
|
-
| `background` | off-white `#f5f5f5` | the page floor — warm, never a cool gray-white |
|
|
35
|
-
| `card` / `popover` | white `#ffffff` | cards and overlays float bright on the off-white canvas |
|
|
36
|
-
| `foreground` | warm near-black `#0c0a09` | all primary ink |
|
|
37
|
-
| `muted` / `secondary` | warm stone `#f0efed` | hover rows, subtle fills, secondary button fill |
|
|
38
|
-
| `muted-foreground` | warm gray `#777169` | labels, captions, secondary text |
|
|
39
|
-
| `border` / `input` | hairline `#e7e5e4` / stronger `#d6d3d1` | separators and grid lines / field edges |
|
|
40
|
-
| `primary` | ink `#292524` | the one primary action (a pill); active nav; press deepens to `#0c0a09` |
|
|
41
|
-
| `accent` | deep stone `#eae7e3` | selected/hovered rows — selection warms the stone, it does not colour it |
|
|
42
|
-
| `ring` | ink `#0c0a09` | the focus outline — unmistakable, because keyboard-first |
|
|
43
|
-
| `destructive` | red `#dc2626` | destructive actions and error state only |
|
|
44
|
-
| `success` / `warning` | green `#16a34a` / amber `#d97706` | status signalling only, never chrome |
|
|
45
|
-
|
|
46
|
-
The five pastels (mint, sky, lavender, peach, rose) live only in `chart-*` — never a button fill, text
|
|
47
|
-
color, or surface; on operator surfaces they are data, not atmosphere.
|
|
48
|
-
|
|
49
|
-
## 3 Typography
|
|
50
|
-
|
|
51
|
-
Two families. `font-sans` is **Inter** — body, UI, table, label, and button. Page titles wear the editorial
|
|
52
|
-
**serif** — Waldenburg Light at weight 300, EB Garamond the open substitute; the 64px hero display stays
|
|
53
|
-
behind, but the light-serif voice is the brand's irreducible signature. `font-mono` is JetBrains Mono for
|
|
54
|
-
IDs, codes, timestamps, log lines; numeric columns render `tabular-nums`. The brand **never bolds** — the
|
|
55
|
-
serif holds 300; sans emphasis caps at `font-weight-strong` (500), 600 only on the uppercase eyebrow.
|
|
56
|
-
|
|
57
|
-
| Step | Role | Family | Size · line | Weight · tracking |
|
|
58
|
-
| --- | --- | --- | --- | --- |
|
|
59
|
-
| h1 | page title | serif | 28px / 1.15 | 300 · `heading-tracking` |
|
|
60
|
-
| h2 | section head | serif | 22px / 1.2 | 300 · -0.01em |
|
|
61
|
-
| h3 | card / group head | sans | 16px / 1.35 | `font-weight-strong` · 0 |
|
|
62
|
-
| body | UI + prose | sans | 15px / 1.5 | `font-weight-normal` · +0.01em |
|
|
63
|
-
| small | labels, meta, dense table | sans | 13px / 1.4 | `font-weight-normal` |
|
|
64
|
-
| caption | uppercase eyebrow | sans | 12px / 1.4 | 600, +0.08em, uppercase |
|
|
65
|
-
| code | IDs, logs, amounts | mono | 13px / 1.5 | `font-weight-normal` |
|
|
66
|
-
|
|
67
|
-
## 4 Component Stylings
|
|
68
|
-
|
|
69
|
-
Every recurring operator component composes from the primitives — no literal values.
|
|
70
|
-
|
|
71
|
-
- **Button** — `primary`: filled ink, a **pill** (`radius-scale` 9999) — the brand's signature, for the
|
|
72
|
-
one primary action. Secondary: `secondary` fill, 1px `border`, base `radius`. Ghost: `accent` on hover.
|
|
73
|
-
- **Input** — `card` fill, 1px `input` border (`border-weight`), base `radius` (8px); focus thickens the
|
|
74
|
-
border to a 2px ink `ring`, no glow.
|
|
75
|
-
- **Card** — `card` surface on a 1px `border`, base `radius` (12px for feature cards); shadow only when
|
|
76
|
-
lifted (`shadow-intensity`); inset by `density-inset`.
|
|
77
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
|
|
78
|
-
numeric columns; row selection warms to `accent`.
|
|
79
|
-
- **Side panel** — detail and edit open in the panel (`side-panel-width`, `side-panel-width-rich` for
|
|
80
|
-
content-heavy), beside the work, not over it.
|
|
81
|
-
- **Badge** — pill radius, `muted`/status fill, uppercase caption; status badges take `success` /
|
|
82
|
-
`warning` / `destructive`, never `primary`.
|
|
83
|
-
|
|
84
|
-
## 5 Layout
|
|
85
|
-
|
|
86
|
-
Base spacing unit 4px; the on-scale ramp is `2 · 4 · 8 · 12 · 16 · 20 · 24 · 32 · 48 · 64` (the marketing
|
|
87
|
-
96px rhythm stays behind). Shell dimensions map one-to-one to the layout primitives (sidebar 256/56px,
|
|
88
|
-
topbar 64px — the brand's nav height, side panel 440/640px, modal 560px, forms 640px, tables full-width)
|
|
89
|
-
— airier than a dense console, because the tier is `spacious`. Density is stepped per archetype by the
|
|
90
|
-
surface catalog, never by absolute overrides.
|
|
91
|
-
|
|
92
|
-
## 6 Depth
|
|
93
|
-
|
|
94
|
-
Flat, hairline-first. Hierarchy comes from the stone ladder and warm hairlines, not shadow:
|
|
95
|
-
|
|
96
|
-
- **0 — canvas** `background` (`#f5f5f5`), no border.
|
|
97
|
-
- **1 — panel / card** `card` (white) on a 1px `border` — lifts off the canvas by brightness and hairline; shadow only when it must lift.
|
|
98
|
-
- **2 — overlay** `popover` / side panel / modal — the one place `shadow-intensity` earns a soft `md`
|
|
99
|
-
drop (the brand's single `0 4px 16px rgba(0,0,0,0.04)` tier). Rank is border and position.
|
|
100
|
-
|
|
101
|
-
Focus is a 2px ink `ring` (never a glow) on every element; z-levels: content, chrome, overlay.
|
|
102
|
-
|
|
103
|
-
## 7 Do's & Don'ts
|
|
104
|
-
|
|
105
|
-
- **Do** anchor on the off-white `#f5f5f5` canvas with white cards — the warm floor is the brand.
|
|
106
|
-
- **Do** keep the accent achromatic — the ink pill is the only action color, reserved for one action per surface.
|
|
107
|
-
- **Do** wear the light serif (weight 300) on page titles, Inter body at +0.01em — the editorial dialect.
|
|
108
|
-
- **Do** pill the primary CTA and badges (`radius-scale` 9999) — the brand's button geometry, kept
|
|
109
|
-
deliberately even though the operator floor would otherwise square it.
|
|
110
|
-
- **Don't** introduce a saturated action color or a second accent; the pastels are chart data only
|
|
111
|
-
(`chart-*`), never fills, text, or surfaces.
|
|
112
|
-
- **Don't** drop the body Inter to weight 300 to match the display — body stays 400/500 for legibility.
|
|
113
|
-
- **Don't** signal elevation with heavy drop shadows, or open detail in a modal when the panel fits.
|
|
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 | forms cap at `form-max-width`; tables and dashboards use the full width; breathing widens |
|
|
125
|
-
|
|
126
|
-
## 9 Agent Prompt Guide
|
|
127
|
-
|
|
128
|
-
Directives the emitting agent follows verbatim:
|
|
129
|
-
|
|
130
|
-
- Reach for the off-white `#f5f5f5` canvas with white cards; keep the accent achromatic — the ink pill is
|
|
131
|
-
the only action color, on the one primary action per surface. If two want it, one is not primary.
|
|
132
|
-
- Page titles wear the light serif (Waldenburg Light / EB Garamond, weight 300) at reduced scale;
|
|
133
|
-
everything else is Inter, body at +0.01em. Never bold — the light display weight is the signature.
|
|
134
|
-
- Pill the primary CTA and badges; keep every other component at the base 8px `radius`.
|
|
135
|
-
- The five pastels are the chart palette only — leave the orbs and the 64px hero display behind.
|
|
136
|
-
- Numeric columns `tabular-nums`; IDs / codes / timestamps `font-mono`; workflows keyboard-complete.
|
|
137
|
-
- Stay flat and spacious — hairline and the stone ladder before shadow.
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: Expo
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Expo — the operator reading
|
|
9
|
-
|
|
10
|
-
Expo's marketing surface is a quietly-confident developer platform: a pure-white editorial canvas
|
|
11
|
-
with a soft sky-blue gradient behind the hero and a centered MacBook + iPhone device composite as its
|
|
12
|
-
chrome. This entry keeps the parts an operator tool can wear — the near-black ink, the single **pure
|
|
13
|
-
black** brand voltage, the cool-neutral grays, the compact developer radii, and the Inter + JetBrains
|
|
14
|
-
Mono type voice — and leaves the marketing devices behind: the sky-gradient wash, the device-mockup
|
|
15
|
-
hero, the 64px display type, and the dark-inversion feature cards do not follow the brand onto a CRM,
|
|
16
|
-
a build queue, or a dashboard.
|
|
17
|
-
|
|
18
|
-
## 1 Visual Theme
|
|
19
|
-
|
|
20
|
-
Light by default; dark is opt-in. Flat and editorial: hierarchy is carried by hairline `border`, type
|
|
21
|
-
weight, and near-black ink — never by heavy shadow (Expo ships a single very-soft drop). The one brand
|
|
22
|
-
voltage is `primary` = **pure black `#000000`**, reserved for the single most important action on a
|
|
23
|
-
surface; this is a deliberate brand override of the usual chromatic-accent floor (black is the only CTA
|
|
24
|
-
fill Expo permits). The neutral ramp is a cool editorial gray anchored on ink `#171717`, so the whole
|
|
25
|
-
UI reads engineered and restrained rather than warm. The anchor surface is a white content canvas
|
|
26
|
-
beside a faintly off-white `sidebar`. Density is `standard` and steps denser per surface archetype.
|
|
27
|
-
|
|
28
|
-
## 2 Color Roles
|
|
29
|
-
|
|
30
|
-
Light values first (hex is the corpus's native format). One brand voltage — black `primary` — carries
|
|
31
|
-
the primary action; a scoped link-blue serves inline references only; status hues speak only status.
|
|
32
|
-
|
|
33
|
-
| Role | Value | Allowed where |
|
|
34
|
-
| --- | --- | --- |
|
|
35
|
-
| `background` / `card` / `popover` | pure white `#ffffff` | page, cards, and overlays — the dominant surface |
|
|
36
|
-
| `foreground` | near-black ink `#171717` | all primary ink, display and body alike |
|
|
37
|
-
| `muted` / `secondary` | soft neutral `#f0f0f3` | hover rows, subtle fills, secondary buttons, tiles |
|
|
38
|
-
| `muted-foreground` | cool gray `#60646c` | labels, captions, secondary running text |
|
|
39
|
-
| `border` / `input` | hairline-strong `#dcdee0` | card outlines, field edges, table grid lines |
|
|
40
|
-
| `primary` | pure black `#000000` | the one primary action; active nav; press state `#1a1a1a` |
|
|
41
|
-
| `accent` | neutral tint `#f0f0f3` | selected / hovered rows and nav (black has no light chroma tint) |
|
|
42
|
-
| `ring` | ink `#171717` | the 2px focus outline — Expo focuses to ink, never a glow |
|
|
43
|
-
| `destructive` | red `#dc2626` | destructive actions and error state only |
|
|
44
|
-
| `success` / `warning` | green `#16a34a` / amber `#ab6400` | status signalling only, never chrome |
|
|
45
|
-
|
|
46
|
-
The text-link blue `#0d74ce` is a scoped grace — inline body/reference links only, never a CTA or a
|
|
47
|
-
chart-of-record accent (see §7). The sky-blue gradient (`#cfe7ff → #a8c8e8`) and the dark-inversion
|
|
48
|
-
surfaces (`#171717` feature cards) are marketing devices; they carry no operator role.
|
|
49
|
-
|
|
50
|
-
## 3 Typography
|
|
51
|
-
|
|
52
|
-
One sans, one mono. `font-sans` is Inter — UI, body, and headings all ride it; heading weight and
|
|
53
|
-
negative tracking, not a second family, carry the editorial voice (display weight holds at 600, never
|
|
54
|
-
700). `font-mono` is JetBrains Mono for IDs, codes, timestamps, and log lines. Numeric columns render
|
|
55
|
-
`tabular-nums` so figures align down a column (floor f04).
|
|
56
|
-
|
|
57
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
58
|
-
| --- | --- | --- | --- |
|
|
59
|
-
| h1 | page title | 24px / 1.25 | `font-weight-strong` · `heading-tracking` |
|
|
60
|
-
| h2 | section head | 18px / 1.4 | `font-weight-strong` · `heading-tracking` |
|
|
61
|
-
| h3 | card / group head | 16px / 1.4 | `font-weight-strong` · `heading-tracking` |
|
|
62
|
-
| body | UI + prose | 14px / 1.5 | `font-weight-normal` |
|
|
63
|
-
| small | labels, meta, dense tables | 13px / 1.4 | `font-weight-normal` |
|
|
64
|
-
| caption | uppercase eyebrow | 11px / 1.4 | `font-weight-strong`, `+0.88px`, uppercase |
|
|
65
|
-
| code | IDs, logs, snippets | 13px / 1.5 | JetBrains Mono, `font-weight-normal` |
|
|
66
|
-
|
|
67
|
-
Bump weight for emphasis; never change size to emphasize. The 64/48/36px hero display steps stay
|
|
68
|
-
behind — the operator ramp tops out at 24px.
|
|
69
|
-
|
|
70
|
-
## 4 Component Stylings
|
|
71
|
-
|
|
72
|
-
Every recurring operator component composes from the primitives — no literal values.
|
|
73
|
-
|
|
74
|
-
- **Button** — `primary`: filled black `primary` on `primary-foreground`, `radius` (8px), no pill;
|
|
75
|
-
press darkens to `#1a1a1a`. Secondary: `secondary` fill, 1px `border`, `foreground`. Tertiary:
|
|
76
|
-
transparent, text-link blue label, inline only.
|
|
77
|
-
- **Input** — `background` fill, 1px `border` (`border-weight`), `radius`; focus thickens to a 2px
|
|
78
|
-
`ring` (ink) outline, no glow. Field height runs generous.
|
|
79
|
-
- **Card** — `card` surface, 1px `border`, `radius` (12px for cards); the single soft drop appears only
|
|
80
|
-
when a card must lift off the canvas (`shadow-intensity`); inset by `density-inset`.
|
|
81
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
|
|
82
|
-
numeric columns; row selection tints `accent`.
|
|
83
|
-
- **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`
|
|
84
|
-
for content-heavy), beside the work, not over it (floor f03).
|
|
85
|
-
- **Badge** — pill (9999) with uppercase caption on a `muted` fill; status badges take
|
|
86
|
-
`success` / `warning` / `destructive`, never `primary`.
|
|
87
|
-
|
|
88
|
-
## 5 Layout
|
|
89
|
-
|
|
90
|
-
Base spacing unit 4px; the on-scale ramp is `2 · 4 · 8 · 12 · 16 · 20 · 24 · 32 · 48 · 64` (Expo keeps
|
|
91
|
-
a 20px step for compact workflow rows). Shell dimensions map one-to-one to the layout primitives:
|
|
92
|
-
sidebar `sidebar-width-expanded` / `sidebar-width-collapsed`, topbar `topbar-height`, side panel
|
|
93
|
-
`side-panel-width` / `side-panel-width-rich`, modal cap `modal-width-max`, forms `form-max-width`,
|
|
94
|
-
tables full-width. Density is governed globally by `density-tier` and stepped per archetype by the
|
|
95
|
-
surface catalog — never by absolute overrides. Expo's 96px marketing section rhythm stays behind.
|
|
96
|
-
|
|
97
|
-
## 6 Depth
|
|
98
|
-
|
|
99
|
-
Flat and editorial. Hierarchy comes from the surface ladder and hairlines, not shadow:
|
|
100
|
-
|
|
101
|
-
- **0 — canvas** `background`, no border.
|
|
102
|
-
- **1 — panel / card** `card` on a 1px `border`; the single soft drop `0 4px 12px rgba(0,0,0,0.04)`
|
|
103
|
-
only when a card must lift.
|
|
104
|
-
- **2 — overlay** `popover` / side panel / modal — the one place `shadow-intensity` earns a soft `md`
|
|
105
|
-
shadow. Rank is border and position, never a heavier stacked shadow.
|
|
106
|
-
|
|
107
|
-
Focus is a 2px `ring` outline in ink (never a glow), visible on every interactive element (floor f06).
|
|
108
|
-
Three z-levels: content, sticky chrome, overlay. The sky-gradient backdrop and dark-inversion surfaces
|
|
109
|
-
are marketing depth and do not appear in operator chrome.
|
|
110
|
-
|
|
111
|
-
## 7 Do's & Don'ts
|
|
112
|
-
|
|
113
|
-
- **Do** reserve black `primary` for the single most important action on a surface; everything else is
|
|
114
|
-
neutral or status.
|
|
115
|
-
- **Do** carry hierarchy with hairlines, weight, and whitespace — the brand is predominantly flat.
|
|
116
|
-
- **Do** set CTAs and inputs at 8px `radius` and cards at 12px — the developer dialect.
|
|
117
|
-
- **Do** apply `tabular-nums` to every numeric column and `font-mono` to IDs, codes, and timestamps.
|
|
118
|
-
- **Don't** introduce a saturated brand action color — black is the only primary fill.
|
|
119
|
-
- **Don't** put the text-link blue on a CTA or button; it is for inline references only.
|
|
120
|
-
- **Don't** pill the primary CTA — pill geometry is reserved for badges.
|
|
121
|
-
- **Don't** bring the sky-blue gradient, the device-mockup hero, or the 64px display into operator chrome.
|
|
122
|
-
- **Don't** signal elevation with heavy drop shadows; one soft drop is the ceiling.
|
|
123
|
-
|
|
124
|
-
## 8 Responsive
|
|
125
|
-
|
|
126
|
-
The operator sweep is 375 / 768 / 1024 / 1440.
|
|
127
|
-
|
|
128
|
-
| Breakpoint | What changes |
|
|
129
|
-
| --- | --- |
|
|
130
|
-
| 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
|
|
131
|
-
| 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
|
|
132
|
-
| 1024 | sidebar expands; two-pane list+detail holds side by side |
|
|
133
|
-
| 1440 | forms cap at `form-max-width`; tables and dashboards use the full width |
|
|
134
|
-
|
|
135
|
-
## 9 Agent Prompt Guide
|
|
136
|
-
|
|
137
|
-
Directives the emitting agent follows verbatim for an operator surface wearing Expo:
|
|
138
|
-
|
|
139
|
-
- Reach first for the black `primary` as the single action fill; keep every other control neutral on a
|
|
140
|
-
hairline `border`. If two things want the accent, one of them is not primary.
|
|
141
|
-
- The text-link blue is a reference color only — inline links, breadcrumbs, entity cross-links. It
|
|
142
|
-
never fills a button and never leads a chart-of-record.
|
|
143
|
-
- Carry IDs, codes, timestamps, and log lines in JetBrains Mono; every numeric column is `tabular-nums`.
|
|
144
|
-
- Stay flat — hairline and weight before shadow. Reach past the single soft drop only for a real overlay.
|
|
145
|
-
- Leave the marketing devices behind: no sky-gradient wash, no device-mockup hero, no 64px display
|
|
146
|
-
type, no dark-inversion feature cards. What carries is the palette, the cool-neutral temperature, the
|
|
147
|
-
8px/12px radius character, and the Inter + JetBrains Mono voice.
|
|
148
|
-
- Every workflow completes from the keyboard; the ink `ring` focus outline is always visible (f06).
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: Figma
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Figma — the operator reading
|
|
9
|
-
|
|
10
|
-
Figma's marketing canvas is an editorial black-and-white frame interrupted by oversized pastel
|
|
11
|
-
color-block sections and pill CTAs — storytelling devices that stay on the marketing site with the
|
|
12
|
-
poster-scale display type. An operator surface inherits the *spine*: pure black ink on pure white, a
|
|
13
|
-
warm off-white for panels, hairline depth over shadow, one saturated chromatic accent (Figma
|
|
14
|
-
magenta), and the figmaSans/figmaMono type voice. It reads as a serious tool made by people who like
|
|
15
|
-
color — monochrome, calm, dense-capable, the joyful pastels demoted to chart encodings.
|
|
16
|
-
|
|
17
|
-
## 1 Visual Theme
|
|
18
|
-
|
|
19
|
-
Light by default; dark is not documented and stays opt-in. Flat: hierarchy is carried by hairline
|
|
20
|
-
`border`, type weight, and the black/white contrast itself — never by heavy shadow, which the brand
|
|
21
|
-
avoids by design. The spine is monochrome — pure black `foreground` on pure white `background`, with a
|
|
22
|
-
faintly warm off-white `muted`/`sidebar`. A single chromatic accent, Figma magenta, is reserved and
|
|
23
|
-
scarce: it carries the focus `ring` and active indicators, nothing decorative. The primary action
|
|
24
|
-
fills black — Figma's own primary is achromatic — so magenta stays a single-shot pop. Density is
|
|
25
|
-
`standard` and steps denser per archetype; the roomy 8px rhythm keeps it friendly, not cramped.
|
|
26
|
-
|
|
27
|
-
## 2 Color Roles
|
|
28
|
-
|
|
29
|
-
Light values first. The neutral spine is genuinely monochrome; magenta is the one chromatic hue that
|
|
30
|
-
carries meaning, and the pastels appear only as chart series.
|
|
31
|
-
|
|
32
|
-
| Role | Value | Allowed where |
|
|
33
|
-
| --- | --- | --- |
|
|
34
|
-
| `background` / `card` / `popover` | white `#ffffff` | page, cards, and overlays — the dominant surface |
|
|
35
|
-
| `foreground` | pure black `#000000` | all primary ink — headlines, body, labels |
|
|
36
|
-
| `muted` / `secondary` | warm off-white `#f7f7f5` | hover rows, tile fills, secondary buttons, the sidebar ground |
|
|
37
|
-
| `muted-foreground` | neutral gray `#666666` | labels, captions, table meta — the secondary ink role |
|
|
38
|
-
| `border` / `input` | hairline `#e6e6e6` | every separator, grid line, and field edge |
|
|
39
|
-
| `primary` | black `#000000` | the one primary action; active-nav fill; selected tab |
|
|
40
|
-
| `accent` | pale magenta `#ffe4ef` | selected / hovered rows and nav — a tint, never a fill |
|
|
41
|
-
| `ring` | magenta `#ff3d8b` | the focus outline and active indicator — the single chromatic pop |
|
|
42
|
-
| `destructive` | red `#eb5757` | destructive actions and error state only |
|
|
43
|
-
| `success` / `warning` | green `#1ea64a` / amber `#f2994a` | status signalling only, never chrome |
|
|
44
|
-
|
|
45
|
-
The pastel color blocks (lime, lilac, cream, mint, pink, coral, navy) are marketing surfaces — no
|
|
46
|
-
operator role, reappearing only as `chart-*` encodings (§7). Figma's marketing refuses a mid-gray text
|
|
47
|
-
role; an operator surface needs one, so `muted-foreground` is a derived neutral gray, AA on white.
|
|
48
|
-
|
|
49
|
-
## 3 Typography
|
|
50
|
-
|
|
51
|
-
One sans, one mono — a single voice that flexes by weight, not a multi-family stack. `font-sans`
|
|
52
|
-
substitutes for the proprietary figmaSans (Inter matches its fine variable-weight axis); the UI, body,
|
|
53
|
-
and headings all ride it, weight and negative tracking carrying the display voice. `font-mono`
|
|
54
|
-
substitutes for figmaMono — reserved for IDs, codes, timestamps, log lines, and uppercase
|
|
55
|
-
eyebrow/caption labels, never body. Numeric columns render `tabular-nums`.
|
|
56
|
-
|
|
57
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
58
|
-
| --- | --- | --- | --- |
|
|
59
|
-
| h1 | page title | 24px / 1.3 | `font-weight-strong` · `heading-tracking` |
|
|
60
|
-
| h2 | section head | 18px / 1.35 | `font-weight-strong` · `heading-tracking` |
|
|
61
|
-
| h3 | card / group head | 15px / 1.4 | `font-weight-strong` · `heading-tracking` |
|
|
62
|
-
| body | UI + prose | 14px / 1.45 | `font-weight-normal` |
|
|
63
|
-
| small | labels, meta, dense table | 13px / 1.4 | `font-weight-normal` |
|
|
64
|
-
| eyebrow / caption | uppercase mono label | 12px / 1.3 | `font-mono`, `+0.05em`, uppercase |
|
|
65
|
-
|
|
66
|
-
Bump weight one step for emphasis; never change size — weight, not scale, carries hierarchy. The
|
|
67
|
-
poster-scale 86px/64px display steps and their aggressive negative tracking stay on the marketing site.
|
|
68
|
-
|
|
69
|
-
## 4 Component Stylings
|
|
70
|
-
|
|
71
|
-
Every recurring operator component composes from the primitives — no literal values.
|
|
72
|
-
|
|
73
|
-
- **Button** — `primary`: filled black `primary` on white `primary-foreground`, `radius`, no pill.
|
|
74
|
-
Secondary: `secondary` fill, 1px `border`, `foreground`. Ghost: transparent, `accent` on hover.
|
|
75
|
-
Icon-only buttons stay circular (`radius-scale` full, 9999) — the one marketing shape that carries.
|
|
76
|
-
- **Input** — `background` fill, 1px `border` (`border-weight`), `radius`; focus draws the magenta `ring` at 2px, no fill change and no glow.
|
|
77
|
-
- **Card** — `card` surface, 1px `border`, `radius`, inset by `density-inset`; shadow only when it must lift (`shadow-intensity`); large feature cards may take the large radius step.
|
|
78
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on numeric columns; selection tints `accent` with a magenta `ring` indicator.
|
|
79
|
-
- **Side panel** — detail and edit open beside the work (`side-panel-width`, `side-panel-width-rich` for content-heavy), not over it.
|
|
80
|
-
- **Badge** — hairline `border`, `muted`/status fill, uppercase mono caption; status badges take `success` / `warning` / `destructive`, never `primary` or magenta.
|
|
81
|
-
|
|
82
|
-
## 5 Layout
|
|
83
|
-
|
|
84
|
-
Base spacing unit 8px (Figma's grid); the on-scale ramp is `4 · 8 · 12 · 16 · 24 · 32 · 48 · 96`.
|
|
85
|
-
Shell dimensions map one-to-one to the layout primitives: sidebar `sidebar-width-expanded` /
|
|
86
|
-
`sidebar-width-collapsed`, topbar `topbar-height` (56px — Figma's own nav height), side panel
|
|
87
|
-
`side-panel-width` / `side-panel-width-rich`, modal cap `modal-width-max`, forms `form-max-width`,
|
|
88
|
-
tables full-width. Density is governed globally by `density-tier` (through `density-gap`) and stepped
|
|
89
|
-
per archetype by the surface catalog — never absolute overrides. The 96px section rhythm stays behind.
|
|
90
|
-
|
|
91
|
-
## 6 Depth
|
|
92
|
-
|
|
93
|
-
Flat and shadow-light. Hierarchy comes from the surface ladder, hairlines, and the black/white
|
|
94
|
-
contrast — not shadow:
|
|
95
|
-
|
|
96
|
-
- **0 — canvas** `background`, no border.
|
|
97
|
-
- **1 — panel / card** `card` on a 1px `border`; shadow only when it must lift off the canvas.
|
|
98
|
-
- **2 — overlay** `popover` / side panel / modal — the one place `shadow-intensity` earns a soft `md`
|
|
99
|
-
shadow (roughly `0 4px 16px rgba(0,0,0,0.06)`). Rank is border and position, never a heavier shadow.
|
|
100
|
-
|
|
101
|
-
Focus is a 2px magenta `ring` outline (never a glow), visible on every interactive element — the one
|
|
102
|
-
chromatic surface the keyboard-first operator sees constantly. Three z-levels: content, chrome, overlay.
|
|
103
|
-
|
|
104
|
-
## 7 Do's & Don'ts
|
|
105
|
-
|
|
106
|
-
- **Do** reserve black `primary` for the single most important action on a surface; everything else is
|
|
107
|
-
neutral or status.
|
|
108
|
-
- **Do** keep magenta scarce — the focus `ring` and small active indicators only. It is a single-shot
|
|
109
|
-
accent, not a fill or a text color.
|
|
110
|
-
- **Do** carry hierarchy with hairlines, weight, and whitespace — the brand is emphatically flat, and
|
|
111
|
-
apply `tabular-nums` to numeric columns and `font-mono` to IDs, codes, and timestamps.
|
|
112
|
-
- **Don't** reach for the pastel color blocks as UI chrome; they are marketing surfaces and appear
|
|
113
|
-
operator-side only as `chart-*` series.
|
|
114
|
-
- **Don't** pill the primary CTA or reach for a radius outside `radius-scale` — pills stay on the
|
|
115
|
-
marketing site.
|
|
116
|
-
- **Don't** introduce a second chromatic accent, spend magenta on body text or a whole fill, or signal
|
|
117
|
-
elevation with heavy drop shadows.
|
|
118
|
-
|
|
119
|
-
## 8 Responsive
|
|
120
|
-
|
|
121
|
-
The operator sweep is 375 / 768 / 1024 / 1440.
|
|
122
|
-
|
|
123
|
-
| Breakpoint | What changes |
|
|
124
|
-
| --- | --- |
|
|
125
|
-
| 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
|
|
126
|
-
| 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
|
|
127
|
-
| 1024 | sidebar expands; two-pane list+detail holds side by side |
|
|
128
|
-
| 1440 | content caps at `form-max-width` for forms; tables and dashboards use the full width |
|
|
129
|
-
|
|
130
|
-
## 9 Agent Prompt Guide
|
|
131
|
-
|
|
132
|
-
Directives the emitting agent follows verbatim:
|
|
133
|
-
|
|
134
|
-
- Wear the spine, not the marketing: pure black on white, warm off-white panels, hairline depth. The
|
|
135
|
-
color blocks, pill CTAs, and 86px display type stay behind.
|
|
136
|
-
- Primary action fills black. If two things want the black fill, one of them is not primary.
|
|
137
|
-
- Magenta is single-shot: the focus `ring` and active indicators only — never a fill, never body text.
|
|
138
|
-
- Icon-only buttons stay circular; every other control uses the base `radius`.
|
|
139
|
-
- Every numeric column is `tabular-nums`; every ID / code / timestamp is `font-mono`.
|
|
140
|
-
- The pastels live only in charts (`chart-1..5`); stay flat — hairline and weight before shadow, and
|
|
141
|
-
reach past a hairline only for a real overlay.
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
schema: design-md/v1
|
|
3
|
-
product: Framer
|
|
4
|
-
provenance: library
|
|
5
|
-
sourced: 2026-07-04
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Framer — operator surfaces on a black artboard
|
|
9
|
-
|
|
10
|
-
Framer's brand is a near-pure-black marketing artboard: white display type set poster-tight, one
|
|
11
|
-
confident blue used only as a signal, and vibrant gradient atmosphere tiles that show what the tool
|
|
12
|
-
builds. This library entry translates that identity to operator work — a CRM, a queue, a dashboard
|
|
13
|
-
in Framer's language. What carries: the dark charcoal surface ladder, white ink, the single blue
|
|
14
|
-
signal, the tight-tracked Inter voice, the softly-rounded geometry. What stays behind: the
|
|
15
|
-
hero-scale GT Walsheim display, the gradient spotlight cards as chrome, the pill CTA, the 5px/96px
|
|
16
|
-
editorial rhythm.
|
|
17
|
-
|
|
18
|
-
Framer is categorically dark. Where the operator doctrine defaults light and treats dark as opt-in,
|
|
19
|
-
this brand legitimately inverts it: the base theme *is* dark, and `color-tokens.light` carries the
|
|
20
|
-
dark charcoal palette (the brand ships no light mode — forcing one would discard the palette). This is
|
|
21
|
-
the recorded override, not a mistake.
|
|
22
|
-
|
|
23
|
-
## 1 Visual Theme
|
|
24
|
-
|
|
25
|
-
Dark by default and dark only. The anchor surface is a near-black `background` canvas beside charcoal
|
|
26
|
-
`card` panels; hierarchy rises through a three-step surface ladder (canvas → surface-1 → surface-2),
|
|
27
|
-
not through heavy shadow. Flat: separation is carried by hairline `border`, surface lift, and white
|
|
28
|
-
ink against gray. A single chromatic accent — Framer blue — lives in `ring`, links, and selected/active
|
|
29
|
-
indicators, and is never a fill. The one primary action reads as a high-contrast white button on the
|
|
30
|
-
dark shell, not a colored one. Density is `standard`: the brand breathes like a poster, and the
|
|
31
|
-
operator read keeps that composure rather than crowding to terminal density.
|
|
32
|
-
|
|
33
|
-
## 2 Color Roles
|
|
34
|
-
|
|
35
|
-
Dark values (the brand's only mode). One accent — Framer blue is the sole chromatic hue that signals;
|
|
36
|
-
status hues speak only status; the gradient family lives in charts, never in chrome.
|
|
37
|
-
|
|
38
|
-
| Role | Value | Allowed where |
|
|
39
|
-
| --- | --- | --- |
|
|
40
|
-
| `background` | near-black `#090909` | the page canvas — the dominant surface, warm-tinted black |
|
|
41
|
-
| `card` / `popover` | charcoal `#141414` (surface-1) | raised panels, cards, overlays, mockup tiles |
|
|
42
|
-
| `muted` / `accent` | `#1c1c1c` (surface-2) | hover rows, subtle fills, selected-row lift (selection is lift, not color) |
|
|
43
|
-
| `foreground` | pure white `#ffffff` (ink) | all primary ink and headlines |
|
|
44
|
-
| `muted-foreground` | gray `#999999` (ink-muted) | labels, meta, captions — the entire secondary tier |
|
|
45
|
-
| `border` / `input` | hairline `#262626` | every separator, grid line, and field edge |
|
|
46
|
-
| `primary` | white `#ffffff` on `#000000` | the one primary action per surface; a light button on dark |
|
|
47
|
-
| `ring` | Framer blue `#0099ff` | focus outlines, links, active/selected indicators — the single signal |
|
|
48
|
-
| `destructive` | red `#ef4444` | destructive actions and error state only |
|
|
49
|
-
| `success` / `warning` | green `#22c55e` / amber `#f59e0b` | status signalling only, never chrome |
|
|
50
|
-
|
|
51
|
-
Hierarchy is binary: ink or ink-muted, no mid-tone grays between. The gradient hues (violet, magenta,
|
|
52
|
-
orange, coral) are brand graces — they carry no chrome role, only chart series (see §7).
|
|
53
|
-
|
|
54
|
-
## 3 Typography
|
|
55
|
-
|
|
56
|
-
One sans, one mono. `font-sans` is Inter — the operator body, UI, and headings all ride it, with Inter's
|
|
57
|
-
character variants (`cv01`, `cv05`, `cv09`, `cv11`, `ss03`, `ss07`) enabled; those variants are the
|
|
58
|
-
brand's body voice and the emitting agent keeps them on. `font-mono` is Geist Mono for IDs, codes,
|
|
59
|
-
timestamps, and log lines. Numeric columns render `tabular-nums` (Inter carries `tnum`) so figures align
|
|
60
|
-
down a column. Framer's hero-scale GT Walsheim display stays behind — operator headings top out where
|
|
61
|
-
Inter already serves.
|
|
62
|
-
|
|
63
|
-
| Step | Role | Size · line | Weight · tracking |
|
|
64
|
-
| --- | --- | --- | --- |
|
|
65
|
-
| h1 | page title | 24px / 1.2 | `font-weight-strong` · `heading-tracking` |
|
|
66
|
-
| h2 | section head | 20px / 1.25 | `font-weight-strong` · `heading-tracking` |
|
|
67
|
-
| h3 | card / group head | 16px / 1.3 | `font-weight-strong` · `heading-tracking` |
|
|
68
|
-
| body | UI + prose | 15px / 1.4 | `font-weight-normal` |
|
|
69
|
-
| small | labels, meta, dense table | 14px / 1.4 | `font-weight-normal` |
|
|
70
|
-
| caption | eyebrow / footnote | 13px / 1.2 | `font-weight-normal`, `+0.01em` |
|
|
71
|
-
|
|
72
|
-
Framer's signature is aggressive negative tracking; at operator sizes it carries as a tighter-than-neutral
|
|
73
|
-
`heading-tracking`, not the hero display's -5% extreme. Bump weight one narrow step for emphasis; never
|
|
74
|
-
change size to emphasize.
|
|
75
|
-
|
|
76
|
-
## 4 Component Stylings
|
|
77
|
-
|
|
78
|
-
Every recurring operator component composes from the primitives — no literal values.
|
|
79
|
-
|
|
80
|
-
- **Button** — `primary`: filled white `primary` on `primary-foreground`, `radius`, no pill. Secondary:
|
|
81
|
-
`secondary` (surface-1) fill, `border`, `foreground`. Ghost: transparent, `muted` on hover.
|
|
82
|
-
- **Input** — `card` (surface-1) fill, 1px `border` (`border-weight`), `radius`; focus draws the blue
|
|
83
|
-
`ring` at 2px, no glow — the one chromatic moment in the field.
|
|
84
|
-
- **Card** — `card` surface, 1px `border`, `radius`; a soft light-edge + `shadow-intensity` drop only
|
|
85
|
-
when it floats off the canvas; inset by `density-inset`.
|
|
86
|
-
- **Table row** — height `table-row-height`; `border` grid lines; `muted` on hover; `tabular-nums` on
|
|
87
|
-
numeric columns; row selection lifts to `accent` (surface-2), never a colored fill.
|
|
88
|
-
- **Side panel** — detail and edit open in the side panel (`side-panel-width`, `side-panel-width-rich`
|
|
89
|
-
for content-heavy), beside the work, not over it.
|
|
90
|
-
- **Badge** — hairline `border`, `muted`/status fill; status badges take `success` / `warning` /
|
|
91
|
-
`destructive`, never `primary` and never the blue.
|
|
92
|
-
|
|
93
|
-
## 5 Layout
|
|
94
|
-
|
|
95
|
-
Base spacing unit 4px (Tailwind `--spacing` 0.25rem); the on-scale ramp is `2 · 4 · 8 · 12 · 16 · 24 ·
|
|
96
|
-
32 · 48 · 64`. Framer's marketing 5px rhythm (15 / 20 / 30) and 96px section breaks stay behind — the
|
|
97
|
-
operator surface normalizes to the 4px ramp the density remap expects. Shell dimensions map one-to-one
|
|
98
|
-
to the layout primitives: sidebar `sidebar-width-expanded` / `sidebar-width-collapsed`, topbar
|
|
99
|
-
`topbar-height` (56px, the brand's nav height), side panel `side-panel-width` / `side-panel-width-rich`,
|
|
100
|
-
modal cap `modal-width-max`, forms `form-max-width`, tables full-width. Density is governed globally by
|
|
101
|
-
`density-tier` and stepped per archetype by the surface catalog — never by absolute overrides.
|
|
102
|
-
|
|
103
|
-
## 6 Depth
|
|
104
|
-
|
|
105
|
-
Flat. Rank comes from the surface ladder and hairlines, not stacked shadow:
|
|
106
|
-
|
|
107
|
-
- **0 — canvas** `background`, no border — the black artboard.
|
|
108
|
-
- **1 — panel / card** `card` (surface-1) on a 1px `border`; the working raised surface.
|
|
109
|
-
- **2 — overlay** `popover` / side panel / modal — a `rgba(255,255,255,0.08)` light top-edge plus a
|
|
110
|
-
soft `shadow-intensity` drop against the near-black. No level stacks a heavier shadow to signal rank;
|
|
111
|
-
rank is surface lift and position.
|
|
112
|
-
|
|
113
|
-
Focus is a 2px blue `ring` outline (never a glow), visible on every interactive element — the only
|
|
114
|
-
chromatic depth signal in the system. Three z-levels: content, sticky chrome, overlay.
|
|
115
|
-
|
|
116
|
-
## 7 Do's & Don'ts
|
|
117
|
-
|
|
118
|
-
- **Do** keep the base dark. Framer ships no light mode; the near-black canvas is the identity.
|
|
119
|
-
- **Do** reserve Framer blue for `ring`, links, and selected/active indicators — a signal color, never a
|
|
120
|
-
surface or button fill.
|
|
121
|
-
- **Do** make the primary action a high-contrast white button; there is one per surface.
|
|
122
|
-
- **Do** mark selection and "active" by surface lift (surface-1 → surface-2), not by a colored tint.
|
|
123
|
-
- **Do** carry hierarchy as a binary ink / ink-muted split — no mid-tone grays crept in between.
|
|
124
|
-
- **Do** apply `tabular-nums` to every numeric column and `font-mono` to IDs, codes, and timestamps.
|
|
125
|
-
- **Don't** promote a second chromatic accent. The gradient hues are chart series only, never chrome.
|
|
126
|
-
- **Don't** pill operator buttons or reach for a radius outside `radius-scale` — the marketing pill CTA
|
|
127
|
-
stays behind; operator buttons take the `radius` default.
|
|
128
|
-
- **Don't** wash a section in a gradient. Gradients were marketing atmosphere; they do not enter the shell.
|
|
129
|
-
- **Don't** open detail or edit in a modal when the side panel fits — modals are for confirmations only.
|
|
130
|
-
|
|
131
|
-
## 8 Responsive
|
|
132
|
-
|
|
133
|
-
The operator sweep is 375 / 768 / 1024 / 1440; the single dark theme holds at every width.
|
|
134
|
-
|
|
135
|
-
| Breakpoint | What changes |
|
|
136
|
-
| --- | --- |
|
|
137
|
-
| 375 | sidebar → off-canvas drawer; two-pane list+detail stacks; side panel → full sheet; density holds |
|
|
138
|
-
| 768 | sidebar collapses to the icon rail (`sidebar-width-collapsed`); tables scroll their overflow |
|
|
139
|
-
| 1024 | sidebar expands; two-pane queue+detail holds side by side |
|
|
140
|
-
| 1440 | forms cap at `form-max-width`; tables and dashboards use the full width |
|
|
141
|
-
|
|
142
|
-
## 9 Agent Prompt Guide
|
|
143
|
-
|
|
144
|
-
Directives the emitting agent follows verbatim:
|
|
145
|
-
|
|
146
|
-
- Build dark. The base theme is the charcoal ladder — canvas `background`, surface-1 `card`, surface-2
|
|
147
|
-
`accent`/`muted` — with white ink and gray `muted-foreground`. There is no light interlude.
|
|
148
|
-
- Accent only with the blue, and only as a signal: focus `ring`, links, active nav, selected indicators.
|
|
149
|
-
If the blue becomes a fill, the brand is drifting.
|
|
150
|
-
- Make the one primary action a white button; everything else is neutral surface or status.
|
|
151
|
-
- Mark selection and active state by lifting a surface step, not by tinting — "selected is lift, not color".
|
|
152
|
-
- Keep hierarchy binary: ink `foreground` or gray `muted-foreground`, nothing between.
|
|
153
|
-
- Set Inter as `font-sans` with its `cv`/`ss` character variants on; `font-mono` Geist Mono for IDs,
|
|
154
|
-
codes, timestamps; `tabular-nums` on every numeric column.
|
|
155
|
-
- Track headings tight; keep buttons and cards on the `radius` default. Leave behind the GT Walsheim
|
|
156
|
-
hero display, the gradient spotlight cards, the pill CTA, and the 96px editorial section rhythm.
|