Live preview
Use this system
Three ways to drop Nebula into your workflow.
Save the file for your tool — your agent then generates UI in Nebula, automatically.
CLAUDE.mdRepo root — Claude Code reads it automatically.
.cursor/rules/nebula.mdcProject rule — applied to every generation.
.windsurfrulesRepo root — Cascade reads it automatically.
.github/copilot-instructions.mdRepo-wide custom instructions for Copilot.
The system
Brand & Voice
Luminous, intelligent, and a little uncanny. Nebula is for AI products: deep space surfaces, neon brand glows, and type that feels engineered. Light carries meaning — accents emit, they don't just sit.
Layout & Grid
Dark canvas with floating surface.raised panels and soft neon shadow glows.
Generous spacing keeps the luminance from overwhelming the content.
Components
Buttons
Primary buttons fill with color.brand.primary and dark onBrand text, wrapped
in a shadow.sm glow that intensifies on hover.
Motion
Smooth, slightly springy entrances on the standard easing. Glows pulse subtly;
all motion respects prefers-reduced-motion.
Accessibility
Light text clears AA on the deep surfaces. Neon accents are never the only signal — they pair with text and shape.
Do & Don't
- Use glow shadows derived from brand hues, not flat drop shadows.
- Keep large dark areas calm; let accents do the work.
- Don't place low-luminance accents as text on the dark base.
Tokens
Color (14)
Tokens
Export
One source of truth, five formats — copy or download any of them.
---$schema: https://designmd.in/schema/v1.jsonid: nebulaname: Nebulatitle: Nebula — Luminous AI Interfaceversion: 1.0.0category: ai-futuristictags: [ai, dark, neon, futuristic, glow]author: designmdlicense: CC-BY-4.0updatedAt: 2026-06-19colorMode: [dark]tokens: color: brand: primary: { value: "oklch(0.72 0.19 320)", type: color } secondary: { value: "oklch(0.82 0.14 195)", type: color } onBrand: { value: "oklch(0.18 0.02 320)", type: color } text: primary: { value: "oklch(0.96 0.01 280)", type: color } muted: { value: "oklch(0.78 0.02 280)", type: color } link: { value: "{color.brand.secondary}", type: color } surface: base: { value: "oklch(0.16 0.02 280)", type: color } raised: { value: "oklch(0.21 0.03 280)", type: color } sunken: { value: "oklch(0.12 0.02 280)", type: color } border: default: { value: "oklch(0.34 0.03 280)", type: color } state: success: { value: "oklch(0.80 0.16 155)", type: color } danger: { value: "oklch(0.70 0.20 22)", type: color } warning: { value: "oklch(0.84 0.15 85)", type: color } info: { value: "oklch(0.80 0.13 235)", type: color } typography: family: sans: { value: "Space Grotesk, system-ui, sans-serif", type: fontFamily } mono: { value: "Space Mono, ui-monospace, monospace", type: fontFamily } scale: xs: { value: "0.75rem", type: dimension } sm: { value: "0.875rem", type: dimension } base: { value: "1rem", type: dimension } lg: { value: "1.25rem", type: dimension } xl: { value: "1.625rem", type: dimension } "2xl": { value: "2.25rem", type: dimension } "3xl": { value: "3.5rem", type: dimension } weight: regular: { value: 400, type: fontWeight } medium: { value: 500, type: fontWeight } bold: { value: 700, type: fontWeight } leading: tight: { value: 1.1, type: number } normal: { value: 1.55, type: number } tracking: tight: { value: "-0.03em", type: dimension } spacing: base: { value: "0.25rem", type: dimension } radius: sm: { value: "0.5rem", type: dimension } md: { value: "0.875rem", type: dimension } lg: { value: "1.25rem", type: dimension } full: { value: "9999px", type: dimension } shadow: sm: { value: "0 0 12px oklch(0.72 0.19 320 / 0.25)", type: shadow } md: { value: "0 0 32px oklch(0.72 0.19 320 / 0.35)", type: shadow } lg: { value: "0 0 64px oklch(0.82 0.14 195 / 0.30)", type: shadow } motion: duration: fast: { value: "180ms", type: duration } base: { value: "300ms", type: duration } easing: standard: { value: "cubic-bezier(0.2, 0.8, 0.2, 1)", type: cubicBezier } breakpoint: md: { value: "768px", type: dimension } lg: { value: "1024px", type: dimension } zIndex: modal: { value: 1300, type: number } iconography: style: { value: "thin 1.5px glowing line icons", type: descriptor } imagery: style: { value: "volumetric gradients, particle fields, deep space", type: descriptor }---# Nebula Design System## Brand & VoiceLuminous, intelligent, and a little uncanny. Nebula is for AI products: deepspace surfaces, neon brand glows, and type that feels engineered. Light carriesmeaning — accents emit, they don't just sit.## Layout & GridDark canvas with floating `surface.raised` panels and soft neon `shadow` glows.Generous spacing keeps the luminance from overwhelming the content.## Components### ButtonsPrimary buttons fill with `color.brand.primary` and dark `onBrand` text, wrappedin a `shadow.sm` glow that intensifies on hover.## MotionSmooth, slightly springy entrances on the standard easing. Glows pulse subtly;all motion respects `prefers-reduced-motion`.## AccessibilityLight text clears AA on the deep surfaces. Neon accents are never the only signal— they pair with text and shape.## Do & Don't- Use glow shadows derived from brand hues, not flat drop shadows.- Keep large dark areas calm; let accents do the work.- Don't place low-luminance accents as text on the dark base.