SDK 1.4.0: WebMCP tool registration
GEO Docs
Design language

Prism design language

The design language of the GEO platform, built on one image: a single beam of light refracted into a spectrum. Core metaphor, five principles, references and the interactive demo.

One beam of light, refracted into a spectrum. GEO takes one piece of content (white light) and refracts it into search, AI answers, social platforms, site clusters and many languages (the spectrum). The interface is the prism: clear, precise and quiet. Color appears only where the light is refracted, which is wherever there is information.

Open the interactive demo ↗. Every rule on these pages can be clicked, played and viewed in light and dark themes there.

This section is the shared specification for the website, the console, the admin app, the default cluster-site theme and the SDK docs (v3 draft, 2026-11-03). Tokens live in packages/tokens, components in packages/ui/src/prism.

Core metaphor

Three layers

MetaphorIn the interfaceRuleTokens
White lightNeutral grounds and textCool near-white; the dark theme is a "darkroom": near black, never pure blackcanvas surface container ink
GlassEvery surface: slabs of optical glassThickness is elevation; a lit top edge replaces borders; higher means brighterelev-1…elev-4 edge
SpectrumColor: six domain bands, status colors, dataColor carries information only; domains are ordered by wavelengthdistribution…ai
Key lightThe Iris brand colorOne key light per screen: the primary action and the current locationbrand
RefractionMotionStarts at the light source (the trigger), spreads outward, returns to it on closespring-*

Why it fits GEO

  • The product is refraction. An article enters the platform and becomes language versions, sites and social posts, which search engines and AI answers then cite. The interface explains this with one image: content is the light, channels are the spectrum.
  • Color has a source. Domain colors are wavelengths of the same beam, so their order, lightness and chroma follow one rule.
  • Elevation has a physical basis. Glass thickness, lighting and shadow make elevation a rule you can derive instead of a per-component choice.
  • Motion has a direction. Every movement answers "where does the light come from?" Things appear, expand and get selected from their trigger, never out of nowhere.

Five principles

When the spec does not cover a case, decide with these five.

#PrincipleMeaningHowDon't
1One key lightOnly one primary action per screen is litOnly the primary button uses solid brand; brand covers ≤ 10% of the screen (primary button + current nav + focus ring); other actions use tonal or text buttonsTwo blue primary buttons in a header; a card filled with brand color
2Color means somethingColor appears only for domain identity, data and statusNeutral grounds; domain colors only in icon tiles, charts and category badges; status colors only for status; no decorative colorRandom card colors "to look nice"; status red used for emphasis
3Light has a sourceEvery movement has a cause and a directionMenus grow from their trigger (transform-origin points at it); dialogs rise from just below the center; closing returns the same wayPopovers flying in from a screen corner; list items appearing in random order
4Glass has thicknessElevation comes from thickness, not linesCard = surface + elev-1 + top-edge highlight; higher layers are brighter with softer, wider shadows; group with space and lightness1px borders on cards, tables and sidebars; bordered cards nested inside cards
5Light follows the handEvery input gets optical feedback within 100msHover catches light (lift + specular), press sinks (0.97), focus casts a beam (the ring converges), selection lets light through (refract)No feedback while waiting for the API; color change only, with no movement or elevation change

References

SourceWhat we borrowedHow Prism differs
Apple HIGSpring animation (response + damping ratio), 44pt touch targets, frosted materials, direct manipulation and interruptible motionApple's materials bend light and deform; Prism's glass is flat: only thickness, a lit edge and shadow, no deformation
Material 3State layers (ink overlays on hover and press), window size classes, motion tokens, accent reserved for the primary actionM3 separates levels with tonal surfaces; Prism uses shadow plus highlight, and domain colors have fixed meanings
Fluent 2Density levels (compact, default, comfortable), visible focus, keyboard firstFluent leans on borders; Prism uses no structural lines
TideSpring parameters compiled to CSS linear() at build time; one signature motion per componentTide's motions squash and stretch; Prism's are optical: catching light, refraction, a light sweep, with no change of shape
Moyun (ink)A transition catalogue row by row, gesture thresholds as numbers, a separate reduced-motion section, rules and code from one sourceMoyun targets tablet touch with physics only; Prism targets desktop consoles and mixes springs with fades

In this section

PageContents
Color & materialWhite light, key light, spectrum, status colors, dispersion, spectrum bar, contrast; five glass levels, frosted glass, scrim, specular light, z-index
Type, shape & iconsFont stack, type scale, typesetting rules, radii and the concentric rule, icons and icon tiles
LayoutSpacing, size classes, shell dimensions, seven page templates, density, responsive tables, website layout
InteractionState model, hit targets, response timing, feedback levels, destructive actions, forms, keyboard, tooltips, bulk selection, drag and drop, gestures
MotionSpring presets, fade and exit, choreography, six signature motions, transition catalogue, reduced motion, performance
Components & patternsComponent spec table, the dashboard pattern, accessibility checklist