Geist only
One family across display, product and data contexts.
A modular design language for scalable product experiences.
Before standardizing anything, inventory the product as it exists: duplicates, near-matches, one-off solutions, accessibility gaps and repeated interaction problems.
The goal is not to count screens for presentation. It is to identify where inconsistency creates design debt, slows implementation or harms comprehension.
A mature system standardizes interaction while protecting the visual and verbal character that makes the product recognizable.
Brand expression comes through proportion, typography, semantic color, motion restraint and content tone rather than decorative inconsistency.
One family across display, product and data contexts.
Controlled radii and spacing—never playful for its own sake.
Clear action labels, recoverable errors and low-friction guidance.
Expressive motion is reserved for moments that genuinely benefit.
The system has a point of view. These principles guide decisions before a designer reaches for a component or a developer reaches for an API.
Prioritize comprehension, status and next action before visual flourish.
Components consume roles and intent—not arbitrary hex values or one-off spacing.
Responsive behavior changes hierarchy, density and composition—not only size.
Keyboard, contrast, focus, motion and screen-reader behavior are part of the spec.
Not every element deserves equal system investment. Frequency, implementation cost and cross-product reuse help decide what belongs in core, extension or local product space.
Small, predictable building blocks combine into increasingly capable product experiences—without losing the rules that make the system coherent.
Foundational UI primitives: controls, labels, icons and tokens.
Small combinations that solve one repeatable interaction.
Structured groups that form meaningful product regions.
Responsive arrangements that define page hierarchy.
Real product contexts where the system proves its value.
Core decisions stay compact and inspectable. Open only what you need.
The shared visual rules every component inherits.
Semantic naming lets themes, states and brands evolve without forcing every component to be rebuilt manually.
#FFFFFF#17181C#F5F6F8#202126#17181C#FFFFFF#3347FF#6673FF#19A85B#33C77A10px10px12px12pxPrism separates raw values from meaning and component decisions, so themes and states can evolve without rewriting the interface layer.
Stable values with no product meaning yet.
#3347FF12px10pxRoles adapt by theme, density and context.
blue.600neutral.600blue.300Used only when a component needs a deliberate exception or state contract.
bg.action.primaryblue.700radius.3Every component is contained inside a disclosure. The first component in each category is open initially; everything else stays quiet until requested.
Triggers, commands and emphasis hierarchy.
Reusable across primary product surfaces.
Movement, orientation and location across product surfaces.
Capture values, choices, dates, files and messages.
Reusable across primary product surfaces.
Narrow, tag, sort and persist working sets.
Reusable across primary product surfaces.
System status, progress, validation and recovery.
Reusable across primary product surfaces.
Group content and manage temporary contextual surfaces.
8 participants · 3 sessions complete
Reusable across primary product surfaces.
Dense information, structure, analysis and history.
| Study | Status | Updated |
|---|---|---|
| Concept validation | Active | Today |
| Pricing study | Review | 2h ago |
| Diary research | Draft | Yesterday |
Reusable across primary product surfaces.
Represent people, presence and participant context.
Reusable across primary product surfaces.
Files, media, calendars and productivity utilities.
Reusable across primary product surfaces.
Research-specific workflows that inherit the core system.
Research-specific extension built on the core system.
AI interaction patterns with context, sources and human control.
Specialized capability built on shared foundations.
Low-level layout and interaction building blocks.
Foundation-level layout or interaction primitive.
Prism treats accessibility as component behavior: semantics, keyboard operation, focus, contrast, error recovery, target size and motion preferences are documented with the visual states.
Normal text ≥ 4.5:1. Large text ≥ 3:1.
Meaningful icons, boundaries and UI states ≥ 3:1 where required.
Every action is available without requiring a pointer.
Focus is visible and is not hidden behind sticky or overlay UI.
Every drag interaction has a non-drag alternative such as click-to-add or Move Up / Down.
24 × 24 CSS px minimum; Prism prefers 44 × 44 for frequent touch actions.
Errors are identified in text and controls receive persistent labels/instructions.
Interactive controls expose programmatic names, roles, states and values.
Nonessential animation is removed when reduced motion is requested.
These ratios validate the core preview token pairs; individual product combinations still require contrast checks during implementation.
Productive motion clarifies state and movement. Expressive motion is reserved for moments that benefit from personality and emphasis.
120ms180ms280mscubic-bezier(.2,.8,.2,1)cubic-bezier(.4,0,1,1)8pxContent guidance reduces ambiguity and protects components when copy expands, localizes or communicates risk.
Use a clear verb + object when consequence matters.
Explain what happened and the next recoverable action.
Allow labels to grow without truncating critical meaning or controls.
Search, error recovery, onboarding and empty states describe how multiple components cooperate to help a user complete something meaningful.
Find, narrow and recover results without hiding current context.
The system is successful when real interfaces feel coherent without looking mechanically assembled.
| Study | Status | Owner |
|---|---|---|
| Pricing research | Active | Neel |
| Concept validation | Active | Ananya |
| Usability benchmark | Active | Ravi |
Responsive design changes hierarchy and arrangement—not merely scale. Navigation, density, actions and data presentation adapt to the device.
Components enter, mature and leave the library deliberately. Ownership and contribution paths prevent the system from becoming either a bottleneck or a dumping ground.
Foundations, tokens and broadly reusable components have central ownership and stricter stability requirements.
Product teams can contribute domain patterns while inheriting core tokens, behavior and accessibility rules.
Tokens, component states and documentation stay aligned so design intent survives implementation and future maintenance.
Color, spacing, type, radius and motion decisions are named by role.
Variants, states, accessibility and responsive behavior map to reusable props and patterns.
Examples, migration notes and release status help teams use the system correctly at scale.
Before broad rollout, test the system in a real workflow. Use what breaks to improve components and documentation, then measure adoption without manufacturing success metrics.
A small product slice validates whether the system works outside its own documentation page.
These are signals to monitor after rollout—not claims about current results.
Start from a responsive template or compose your own interface from Prism components. Test layout behavior across desktop, tablet and mobile, then inspect Light and Dark mode individually or side by side.
Prism connects foundations, components, patterns, accessibility and responsive behavior into one reusable product language.
Three more works across complex products, research platforms and design systems.