Claude Fable 5.1 & GPT-6 Astra packages are live

X.ai

Free · MIT

An inspired interpretation of xAI's design language — Elon Musk's frontier-AI company whose web surface is a strict near-black canvas broken only by…

466 lines21.3 KB Gemini Design
Version
alpha
Name
xAI-Inspired-design-analysis
Description
An inspired interpretation of xAI's design language — Elon Musk's frontier-AI company whose web surface is a strict near-black canvas broken only by white pill outlines, occasional warm sunset / dusk gradient accents, a custom geometric sans (Universal Sans) for display, and an uppercase tracked monospace caption face; the whole system reads as engineered-cosmic, unmarketed.
Colors
primary#ffffff
on-primary#0a0a0a
ink#ffffff
ink-hover#fafaf7
body#dadbdf
body-mid#7d8187
mute#7d8187
hairline#212327
canvas#0a0a0a
canvas-soft#1a1c20
canvas-card#191919
canvas-mid#363a3f
accent-sunset#ff7a17
accent-sunset-soft#ffc285
accent-dusk#7c3aed
accent-twilight#c4b5fd
accent-breeze#a0c3ec
accent-midnight#0d1726
Typography
display-xl
fontFamilyuniversalSans, Inter, system-ui, -apple-system, sans-serif
fontSize96px
fontWeight400
lineHeight96px
letterSpacing-2.4px
display-lg
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize72px
fontWeight400
lineHeight72px
letterSpacing-1.8px
display-md
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize48px
fontWeight400
lineHeight48px
letterSpacing-1.2px
display-sm
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize32px
fontWeight400
lineHeight36px
letterSpacing-0.6px
display-xs
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize20px
fontWeight400
lineHeight28px
body-lg
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize18px
fontWeight400
lineHeight28px
body-md
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize16px
fontWeight400
lineHeight24px
body-sm
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize14px
fontWeight400
lineHeight20px
caption-mono
fontFamilyGeistMono, ui-monospace, SFMono-Regular, Menlo, Monaco, monospace
fontSize14px
fontWeight400
lineHeight20px
letterSpacing1.4px
caption-mono-sm
fontFamilyGeistMono, ui-monospace, SFMono-Regular, Menlo, monospace
fontSize12px
fontWeight400
lineHeight16px
letterSpacing1.2px
button-md
fontFamilyuniversalSans, Inter, system-ui, sans-serif
fontSize14px
fontWeight400
lineHeight20px
Rounded
none0px
sm8px
pill9999px
full9999px
Spacing
xxs2px
xs4px
sm8px
md12px
lg16px
xl24px
2xl32px
3xl48px
4xl64px
Components
nav-bar
backgroundColor{colors.canvas}
textColor{colors.ink}
typography{typography.body-sm}
padding{spacing.md} {spacing.xl}
nav-link
textColor{colors.ink}
typography{typography.body-sm}
button-primary
backgroundColor{colors.primary}
textColor{colors.on-primary}
borderColor{colors.primary}
typography{typography.button-md}
rounded{rounded.pill}
padding{spacing.xs} {spacing.md}
button-outline-on-dark
backgroundColor{colors.canvas}
textColor{colors.ink}
borderColor{colors.hairline}
typography{typography.button-md}
rounded{rounded.pill}
padding{spacing.sm} {spacing.lg}
button-outline-sm
backgroundColor{colors.canvas}
textColor{colors.ink}
borderColor{colors.hairline}
typography{typography.button-md}
rounded{rounded.pill}
padding{spacing.xs} {spacing.md}
text-input
backgroundColor{colors.canvas-soft}
textColor{colors.ink}
borderColor{colors.hairline}
typography{typography.body-md}
rounded{rounded.sm}
padding{spacing.md} {spacing.lg}
card-content
backgroundColor{colors.canvas-card}
textColor{colors.ink}
borderColor{colors.hairline}
typography{typography.body-md}
rounded{rounded.sm}
padding{spacing.xl}
card-feature-product
backgroundColor{colors.canvas-card}
textColor{colors.ink}
borderColor{colors.hairline}
typography{typography.body-md}
rounded{rounded.sm}
padding{spacing.xl}
hero-band
backgroundColor{colors.canvas}
textColor{colors.ink}
typography{typography.display-xl}
padding{spacing.4xl} {spacing.xl}
content-band
backgroundColor{colors.canvas}
textColor{colors.ink}
typography{typography.display-md}
padding{spacing.4xl} {spacing.xl}
eyebrow-mono
textColor{colors.ink}
typography{typography.caption-mono}
divider-hairline
borderColor{colors.hairline}
footer
backgroundColor{colors.canvas}
textColor{colors.body}
typography{typography.body-sm}
padding{spacing.3xl} {spacing.xl}
ex-pricing-tier
descriptionDefault Pricing tier card. Re-uses feature-card chrome with brand canvas-soft surface.
backgroundColor{colors.canvas-soft}
textColor{colors.ink}
borderColor{colors.hairline}
rounded{rounded.sm}
padding{spacing.xl}
ex-pricing-tier-featured
descriptionFeatured/highlighted tier — polarity-flipped surface (dark fill + light text in light mode, light fill + dark text in dark mode).
backgroundColor{colors.ink}
textColor{colors.on-primary}
rounded{rounded.sm}
padding{spacing.xl}
ex-product-selector
descriptionWhat's Included summary card — re-purposed for SaaS / B2B verticals (NOT a literal product gallery).
backgroundColor{colors.canvas-soft}
rounded{rounded.sm}
padding{spacing.xl}
ex-cart-drawer
descriptionSubscription summary — re-purposed for SaaS / B2B (line items per add-on, not literal cart).
backgroundColor{colors.canvas}
rounded{rounded.sm}
padding{spacing.xl}
item-divider{colors.hairline}
ex-app-shell-row
descriptionSidebar nav row inside the App Shell example. Active state uses brand primary as the indicator.
backgroundColor{colors.canvas}
activeIndicator{colors.primary}
rounded{rounded.sm}
padding{spacing.md} {spacing.lg}
ex-data-table-cell
descriptionDefault data-table th + td chrome. Header uses mono-caps eyebrow typography; body uses body-sm.
headerBackground{colors.canvas-soft}
headerTypography{typography.caption-mono}
bodyTypography{typography.body-sm}
cellPadding{spacing.md} {spacing.lg}
rowBorder{colors.hairline}
ex-auth-form-card
descriptionSign-in / sign-up card. Re-uses feature-card chrome with text-input primitives inside.
backgroundColor{colors.canvas-soft}
rounded{rounded.sm}
padding{spacing.xl}
ex-modal-card
descriptionModal dialog surface — same chrome as feature-card with elevated shadow.
backgroundColor{colors.canvas}
rounded{rounded.sm}
padding{spacing.xl}
ex-empty-state-card
descriptionEmpty-state illustration frame.
backgroundColor{colors.canvas-soft}
rounded{rounded.sm}
padding{spacing.3xl}
captionTypography{typography.body-md}
ex-toast
descriptionToast notification surface — feature-card shape + medium shadow.
backgroundColor{colors.canvas}
rounded{rounded.sm}
padding{spacing.md} {spacing.lg}
typography{typography.body-sm}

#Overview

xAI is Elon Musk's frontier-AI lab and the website wears that posture with engineered restraint: a near-black canvas {colors.canvas} (#0a0a0a) edge-to-edge, white outline pills as every interactive element, and a single proprietary geometric sans Universal Sans carrying every display headline at weight 400. There is no gradient hero, no atmospheric backdrop, no product screenshot. The brand reads as confidently sparse — a research lab announcing its work rather than a SaaS marketing site.

Type is the second decisive voice. Universal Sans carries every display at weight 400 (regular) with aggressive negative tracking (-2.4 px at 96 px, scaling down through the display ladder). For technical labels, eyebrows, and metric counters, the brand pairs Geist Mono (uppercase, 1.4 px positive tracking) — every section eyebrow reads as a code comment more than a marketing label.

Every interactive element is a pill ({rounded.pill} 9999 px) with 1 px white-translucent border rgba(255, 255, 255, 0.25). The button shape never varies — the same translucent-white pill carries "Try Grok", "Read announcement", "Custom Voices", "Sign up now", and every "Read" anchor. The pill is the entire shape system.

Key Characteristics:

  • A single near-black canvas ({colors.canvas} #0a0a0a) with white outline pills as the entire interactive vocabulary.
  • Universal Sans weight 400 for display, Geist Mono uppercase tracked for labels — the two-face contrast IS the brand voice.
  • Every button is a {rounded.pill} outline with translucent-white border. The brand never uses filled CTAs except for one variant (white-filled pill on Sign Up).
  • Cards are tight {rounded.sm} 8 px rectangles in a slightly-lighter {colors.canvas-card} (#191919) fill with hairline border. No shadows.
  • A muted accent palette of sunset-orange / dusk-purple / twilight-violet / breeze-blue lives in the design tokens but appears rarely on the main marketing surface — reserved for product illustrations / icons.
  • Massive negative letter-spacing on display headlines (-2.4 px at 96 px) gives the typography a precise, gathered look.

#Colors

#Brand & Accent

  • White ({colors.primary}#ffffff): The brand's primary "color" — used as button outline, button-primary fill, all display text. The brand's signature is white-on-near-black.
  • Sunset Orange ({colors.accent-sunset}#ff7a17): A warm orange used inside product illustrations and accent moments.
  • Sunset Soft ({colors.accent-sunset-soft}#ffc285): The lighter variant of the sunset accent.
  • Dusk Purple ({colors.accent-dusk}#7c3aed): Deep purple used inside product illustrations.
  • Twilight ({colors.accent-twilight}#c4b5fd): Soft violet — illustrative accent.
  • Breeze Blue ({colors.accent-breeze}#a0c3ec): Soft blue — illustrative accent.
  • Midnight ({colors.accent-midnight}#0d1726): Deep blue-black for illustrative backgrounds.

#Surface

  • Canvas ({colors.canvas}#0a0a0a): The default near-black page background. The brand's only true surface.
  • Canvas Soft ({colors.canvas-soft}#1a1c20): A slightly lighter dark fill used for hovered nav items and tooltips.
  • Canvas Card ({colors.canvas-card}#191919): The charcoal card fill used inside product-feature cards.
  • Canvas Mid ({colors.canvas-mid}#363a3f): A mid-dark used for nested surfaces and code mockup backgrounds.
  • Hairline ({colors.hairline}#212327): 1 px solid dividers on dark surfaces.

#Text

  • Ink ({colors.ink}#ffffff): Default text on canvas — pure white.
  • Ink Hover ({colors.ink-hover}#fafaf7): Slightly off-white used for hover states (filtered out per no-hover policy in component specs).
  • Body ({colors.body}#dadbdf): Secondary body text — supporting copy in lighter weight.
  • Body Mid / Mute ({colors.body-mid}#7d8187): Mid-emphasis body and mute text — captions, fine print.

#Semantic

The brand doesn't surface a separate semantic palette on the marketing site. Validation cues use the white-on-canvas hierarchy.

#Typography

#Font Family

Two faces ladder the system:

  1. universalSans — proprietary geometric sans used for every display, body, button, and link role. Weight 400 only on the marketing surface (the brand's restraint is part of the voice). Negative letter-spacing at display sizes is the visual signature.
  2. GeistMono — used for uppercase section eyebrows, label captions, and metric counters. Positive tracking (1.2 – 1.4 px) at 12 – 14 px.

#Hierarchy

TokenSizeWeightLine HeightLetter SpacingUse
{typography.display-xl}96px40096px-2.4pxMaximum hero scale.
{typography.display-lg}72px40072px-1.8pxSub-hero displays.
{typography.display-md}48px40048px-1.2pxSection headlines.
{typography.display-sm}32px40036px-0.6pxCard-cluster headings.
{typography.display-xs}20px40028px0Inline displays.
{typography.body-lg}18px40028px0Lead paragraphs.
{typography.body-md}16px40024px0Default body.
{typography.body-sm}14px40020px0Secondary body.
{typography.caption-mono}14px40020px1.4pxSection eyebrow (GeistMono uppercase).
{typography.caption-mono-sm}12px40016px1.2pxSmall mono labels.
{typography.button-md}14px40020px0Button label.

#Principles

  • Weight 400 for everything. The brand never bolds. Negative tracking + size hierarchy do the emphasis work.
  • Tight negative tracking on display sizes. Reverting to neutral tracking loses the precision feel.
  • GeistMono uppercase for eyebrows. Tracked positively (1.4 px) to make the mono read as a code comment.

#Note on Font Substitutes

universalSans is proprietary. Open-source substitutes:

  • Display + bodyInter weight 400 with -0.04em to -0.02em letter-spacing at display sizes comes closest. Geist is the second-best option.
  • MonoGeist Mono is the documented brand companion; JetBrains Mono or IBM Plex Mono are alternates.

#Layout

#Spacing System

  • Base unit: 4 px.
  • Tokens: {spacing.xxs} 2 px · {spacing.xs} 4 px · {spacing.sm} 8 px · {spacing.md} 12 px · {spacing.lg} 16 px · {spacing.xl} 24 px · {spacing.2xl} 32 px · {spacing.3xl} 48 px · {spacing.4xl} 64 px.
  • Section padding: hero / content bands at {spacing.4xl} 64 px on desktop.
  • Card interior padding: {spacing.xl} 24 px.

#Grid & Container

  • Marketing content centres at ~1200 px.
  • Product / announcement card grid: 2-up at desktop, 1-up at mobile.

#Responsive Strategy

Breakpoints

NameWidthKey Changes
Mobile< 768pxHero scales 96 → 48 px; grids 1-up; hamburger nav.
Desktop≥ 768pxFull hero + 2-up grids.

Touch Targets

Buttons render ~32 – 40 px tall (8 vertical padding + 20 line). Mobile inflates touch area to meet WCAG 44 × 44 px.

Image Behavior

The brand uses sparse SVG illustrations for product moments (Grok, Voice, API). No photography on the marketing surface.

#Elevation & Depth

LevelTreatmentUse
Level 0 — FlatNo shadow, no border.Default.
Level 1 — Hairline1 px solid {colors.hairline} border.Card chrome, button outlines (with translucent white).

The brand uses no shadows. Hairline borders carry all elevation cues.

#Shapes

#Border Radius Scale

TokenValueUse
{rounded.none}0pxFull-bleed bands.
{rounded.sm}8pxCard chrome (the brand's --radius value).
{rounded.pill}9999pxEvery button — the brand's universal interactive shape.
{rounded.full}9999pxCircular icon containers.

#Components

#Buttons

button-primary — the rare white-filled pill (used on a single Sign Up CTA).

  • Background {colors.primary} white, text {colors.on-primary} near-black, 1 px solid white border, label {typography.button-md}, padding {spacing.xs} {spacing.md}, shape {rounded.pill} 9999 px.

button-outline-on-dark — the canonical white-outline pill, used for every non-primary CTA.

  • Background {colors.canvas} (transparent in practice — rgba(0,0,0,0)), text {colors.ink} white, 1 px solid {colors.hairline} border (translucent white at runtime), same typography / padding scale / shape.

button-outline-sm — the smaller outline pill used in card-cluster CTAs.

  • Same as button-outline-on-dark with tighter padding {spacing.xs} {spacing.md}.

#Cards & Containers

card-content — the default content card.

  • Background {colors.canvas-card} (#191919), text {colors.ink}, 1 px solid {colors.hairline} border, padding {spacing.xl}, shape {rounded.sm} 8 px.

card-feature-product — the product-feature card (Grok / Voice / API).

  • Same chrome as card-content. Hosts an SVG illustration + headline + body + outline pill CTA.

#Inputs & Forms

text-input — the standard text input on dark.

  • Background {colors.canvas-soft}, text {colors.ink}, 1 px solid {colors.hairline}, body in {typography.body-md}, padding {spacing.md} {spacing.lg}, shape {rounded.sm} 8 px.

nav-bar — the sticky top nav.

  • Background {colors.canvas}, text {colors.ink}, padding {spacing.md} {spacing.xl}.

nav-link — link items inside nav.

  • Text {colors.ink}, set in {typography.body-sm}.

footer — the footer band.

  • Background {colors.canvas}, text {colors.body}, padding {spacing.3xl} {spacing.xl}. Body in {typography.body-sm}.

#Signature Components

hero-band — the dark hero with massive display headline.

  • Background {colors.canvas}, text {colors.ink}, padding {spacing.4xl} {spacing.xl}. Headline in {typography.display-xl} (96 px weight 400 with -2.4 px tracking).

content-band — the standard content section.

  • Background {colors.canvas}, text {colors.ink}, padding {spacing.4xl} {spacing.xl}. Section headline in {typography.display-md} preceded by a {typography.caption-mono} UPPERCASE GeistMono eyebrow.

eyebrow-mono — the uppercase tracked GeistMono label above every section headline.

  • Text {colors.ink}, set in {typography.caption-mono}. The brand's signature label style.

divider-hairline — the 1 px line between section bands.

  • 1 px solid {colors.hairline}.

#Examples (illustrative)

Auto-derived kit-mirror demonstration surfaces (scripts/derive-examples-block.mjs). Each ex-* entry references brand-native primitives so downstream consumers (/preview-design, /generate-kit) re-skin the same 10 surfaces consistently. TO_FILL markers indicate missing primitives — resolve in the LLM judgment pass.

ex-pricing-tier — Default Pricing tier card. Re-uses feature-card chrome with brand canvas-soft surface.

  • Properties: backgroundColor, textColor, borderColor, rounded, padding

ex-pricing-tier-featured — Featured/highlighted tier — polarity-flipped surface (dark fill + light text in light mode, light fill + dark text in dark mode).

  • Properties: backgroundColor, textColor, rounded, padding

ex-product-selector — What's Included summary card — re-purposed for SaaS / B2B verticals (NOT a literal product gallery).

  • Properties: backgroundColor, rounded, padding

ex-cart-drawer — Subscription summary — re-purposed for SaaS / B2B (line items per add-on, not literal cart).

  • Properties: backgroundColor, rounded, padding, item-divider

ex-app-shell-row — Sidebar nav row inside the App Shell example. Active state uses brand primary as the indicator.

  • Properties: backgroundColor, activeIndicator, rounded, padding

ex-data-table-cell — Default data-table th + td chrome. Header uses mono-caps eyebrow typography; body uses body-sm.

  • Properties: headerBackground, headerTypography, bodyTypography, cellPadding, rowBorder

ex-auth-form-card — Sign-in / sign-up card. Re-uses feature-card chrome with text-input primitives inside.

  • Properties: backgroundColor, rounded, padding

ex-modal-card — Modal dialog surface — same chrome as feature-card with elevated shadow.

  • Properties: backgroundColor, rounded, padding

ex-empty-state-card — Empty-state illustration frame.

  • Properties: backgroundColor, rounded, padding, captionTypography

ex-toast — Toast notification surface — feature-card shape + medium shadow.

  • Properties: backgroundColor, rounded, padding, typography

#Do's and Don'ts

#Do

  • Reserve {colors.canvas} (#0a0a0a) as the only page surface. The brand is dark-canvas only.
  • Set hero headlines in {typography.display-xl} Universal Sans weight 400 with -2.4 px tracking. The precision IS the voice.
  • Use {rounded.pill} 9999 px on every interactive element. The pill is the brand.
  • Pair Universal Sans (sentence-case) with GeistMono UPPERCASE (eyebrows, labels, metric counters).
  • Use white-translucent borders for outline buttons — the brand never uses solid white borders on its outline pill.

#Don't

  • Don't introduce a light-mode counterpart. xAI is dark-canvas only.
  • Don't bold display headlines. Weight 400 is the entire scale.
  • Don't use filled buttons broadly. The brand uses outline pills almost exclusively; one Sign Up white-filled pill is the rare exception.
  • Don't drop a drop-shadow on cards. Hairline borders carry elevation.
  • Don't substitute Universal Sans with a generic geometric sans without adjusting letter-spacing. The negative tracking is part of the brand.