Tweak a single base color, type scale, or spacing unit and watch every surface, every component, every proportion respond in real time. Export to your framework of choice.
This whole section sits on .surface-secondary. Headings, body copy, links, and button labels auto-pick the right tokens through the cascade — no per-element overrides required.
Fluid type using clamp(). Resize the preview to watch it breathe.
Body text — Design tokens are the single source of truth for your visual language. They describe colors, typography, spacing, and elevation in a way that can be shared across platforms and frameworks. When the tokens change, the entire interface adapts in a single, coherent motion.
Buttons, badges, and cards share the token language.
Every brand starts with color. Your palette propagates automatically to every surface.
Fluid scales keep your hierarchy responsive across devices without media-query gymnastics.
A unified spacing scale enforces rhythm across components and layouts.
The same .card markup, placed inside different surface contexts. Headings, body text, and buttons auto-select the right role tokens through the cascade.
This card sits on a primary background. All text, headings, and button labels pick their on-primary variants automatically.
Same markup, different context. The secondary surface cascade remaps every role token — no per-element overrides.
Sitestream card patterns — headline visible by default, description revealed on hover. Full polish requires the Sitestream framework.
Description fades into view with a subtle gradient backdrop when the card is hovered.
Connecting cross-functional teams through clear systems and shared design tokens.
Media containers at proportions derived from --aspect-* tokens.
Viewport-triggered entrance animations. Scroll back up to retrigger where supported.
Default entrance — element rises and fades in as it enters the viewport.
Gentle zoom-in for hero callouts and key statistics.
Quiet option — opacity without movement, for dense content.
Combine with delay utilities to cascade multiple tiles.
Mouseover, focus, and transition patterns — each demo is live. Hover the element, then click “Copy CSS” to take the snippet.
Sitestream-style feature tiles pairing iconography with short copy.
Every component reads from the same spacing, color, and type scale.
Flip between Tailwind, Bootstrap, Foundation, Sitestream, or pure CSS output.
Neutral ramp auto-inverts with a single attribute flip.
Copy section HTML with or without resolved inline styles.
| Token | Category | Purpose |
|---|---|---|
--color-primary | Color | Primary brand accent |
--text-h1 | Typography | Fluid heading level 1 |
--space-lg | Spacing | Default vertical rhythm |
--radius-md | Shape | Standard component radius |
--shadow-md | Elevation | Raised surface |
Three tiers, one token system. The featured plan inherits the primary color.
What teams say after wiring their design system to a single source of truth.
LSD collapsed three days of palette bikeshedding into a 20-minute working session. We left with tokens our engineers actually shipped.
Being able to swap frameworks live and watch the same showcase respond is the demo that finally got our director to greenlight the rebrand.
The exporter output dropped straight into our Tailwind config. No translation layer, no design-to-code handoff doc.
Status messaging styled by semantic color tokens, plus a token-aware code surface.
A new version of the exporter is available in the drawer.
Your preset “Brand v3” was written to local storage.
Body text on surface fails WCAG AA. Consider darkening the text token.
Could not parse pasted CSS. Check that variables use the --color-* prefix.
import { createStore, resolveTokens } from './state';
const store = createStore(defaultState);
store.subscribe((state) => {
const tokens = resolveTokens(state);
applyToIframe(tokens, state.framework);
});
store.patch({ tokens: { colors: { primary: '#7c5cff' } } });
Answers to the questions we hear most often from teams evaluating LSD.
Yes. Paste your existing CSS variables into the import panel and LSD will parse them into editable tokens. From there, every change re-exports cleanly back to your chosen framework.
All three plus Sitestream and a framework-agnostic CSS variables mode. Swap the target from the drawer and the preview re-renders with the matching stylesheet loaded live.
Presets can be saved locally for personal iteration, or pushed to the shared Bun server. Teams on the Pro plan get cloud sync so everyone stays on the same tokens.
LSD ships exporters for CSS variables, SCSS, Tailwind config, Bootstrap overrides, Foundation settings, and Sitestream tokens. Pick a target and copy the output straight into your repo.
The MCP server exposes your tokens and presets to Claude and other agents, so you can ask for "a fintech palette with tighter spacing" and let the agent draft a preset you can then refine by hand.
A snapshot of how the LSD showcase has evolved.
Vite shell lands. The 26-template HSLA-difference palette engine is preserved verbatim from the legacy tool and wrapped in a typed ColorToken layer.
Token editors, six exporters, copy-HTML bridge, dark-mode variants, OKLCH contrast badges, and per-section copy ship together.
A local Bun HTTP server backs shared presets, and an MCP stdio server exposes the same surface to Claude and other AI agents.
Natural-language token generation and live HTML authoring land, letting designers describe a brand and watch the showcase converge on it.
A few vanity metrics to show how trend indicators and display type react to token changes.
Live preview of each --gradient-* token. Click any swatch to copy its variable.
Live reference of every CSS custom property emitted by LSD. Click any row to copy the var(...) expression.