Next.js / React / shadcn/ui
Lab Studio
A high-impact editorial design system for a fashion-lab brand. Identity is defined by three inseparable elements: an oversized lowercase 'lab.' in heavy grotesque at maximum viewport scale, sharp zero-radius geometry on every element, and a single vivid orange-red (#fa532d) used exclusively as cutting color blocks over product imagery and square icon-only CTAs — never as a page background. Near-white surfaces, near-black text, and deliberate emptiness produce confident editorial tension.
editorial
fashion
minimal
bold
grotesque
orange
streetwear
flat
sharp
neutral-surface
zero-radius
lowercase
labstudio.com
lab.
lab.
Materials of creation — crafted elements and visual language for those who build next.
Explore →Tokens
labstudio.com
lab.
lab.
Materials of creation — crafted elements and visual language for those who build next.
Explore →Tokens
Exports
Agent Prompt Surface
---
# Machine-readable tokens (the WHAT). The prose body gives the WHY + the rules.
colors:
roles_light:
background: "#F9F9F9"
foreground: "#111111"
card: "#FFFFFF"
card-foreground: "#111111"
popover: "#FFFFFF"
popover-foreground: "#111111"
primary: "#FA532D"
primary-foreground: "#000000"
secondary: "#EFEFEF"
secondary-foreground: "#111111"
muted: "#F2F2F2"
muted-foreground: "#000000"
accent: "#FA532D"
accent-foreground: "#000000"
destructive: "#DC2626"
destructive-foreground: "#FFFFFF"
border: "#E4E4E4"
input: "#E8E8E8"
ring: "#FA532D"
success: "#16A34A"
success-foreground: "#000000"
warning: "#F59E0B"
warning-foreground: "#000000"
chart-1: "#FA532D"
chart-2: "#111111"
chart-3: "#7C7474"
chart-4: "#F09B89"
chart-5: "#901C09"
palette:
- { name: "brand-orange", hex: "#fa532d", role: "primary" }
- { name: "brand-orange-alt", hex: "#f53611", role: "primary" }
- { name: "dark-red", hex: "#901c09", role: "primary-dark" }
- { name: "light-coral", hex: "#f09b89", role: "primary-light" }
- { name: "near-black", hex: "#111111", role: "ink" }
- { name: "pure-black", hex: "#000000", role: "ink" }
- { name: "dark-muted", hex: "#3c3b3c", role: "ink-secondary" }
- { name: "off-white", hex: "#f9f9f9", role: "surface" }
- { name: "light-gray-1", hex: "#f2f2f2", role: "surface" }
- { name: "light-gray-2", hex: "#ededed", role: "surface" }
- { name: "light-gray-3", hex: "#f0f0f0", role: "surface" }
- { name: "light-gray-4", hex: "#f7f7f7", role: "surface" }
- { name: "pure-white", hex: "#ffffff", role: "surface" }
- { name: "border-gray", hex: "#cccccc", role: "border" }
- { name: "warm-gray", hex: "#7c7474", role: "text-secondary" }
- { name: "silver", hex: "#b4bcbc", role: "text-tertiary" }
- { name: "data-orange", hex: "#fa532d", role: "data-viz" }
- { name: "data-ink", hex: "#111111", role: "data-viz" }
- { name: "data-warm-gray", hex: "#7c7474", role: "data-viz" }shadcn CSS Variables
/* Generated by Identity Forge design kits */
@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&family=Inter:wght@400;500;600;700&family=Space%20Mono:wght@400;700&display=swap");
:root {
--radius: 0.125rem;
--font-heading: 'Barlow', sans-serif;
--font-sans: 'Inter', sans-serif;
--font-mono: 'Space Mono', monospace;
--background: 0 0% 98%;
--foreground: 0 0% 7%;
--card: 0 0% 100%;
--card-foreground: 0 0% 7%;
--popover: 0 0% 100%;
--popover-foreground: 0 0% 7%;
--primary: 11 95% 58%;
--primary-foreground: 0 0% 0%;
--secondary: 0 0% 94%;
--secondary-foreground: 0 0% 7%;
--muted: 0 0% 95%;
--muted-foreground: 0 0% 0%;
--accent: 11 95% 58%;
--accent-foreground: 0 0% 0%;
--destructive: 0 72% 51%;
--destructive-foreground: 0 0% 100%;
--border: 0 0% 89%;
--input: 0 0% 91%;
--ring: 11 95% 58%;
--success: 142 76% 36%;
--success-foreground: 0 0% 0%;
--warning: 38 92% 50%;
--warning-foreground: 0 0% 0%;
--chart-1: 11 95% 58%;
--chart-2: 0 0% 7%;
--chart-3: 0 3% 47%;
--chart-4: 10 77% 74%;
--chart-5: 8 88% 30%;
--shadow-sm: 0 1px 2px rgba(0,0,0,0.04);
--shadow-md: 0 2px 6px rgba(0,0,0,0.06);
--shadow-lg: 0 4px 12px rgba(0,0,0,0.08);
--shadow-xl: 0 8px 24px rgba(0,0,0,0.10);
--gradient-hero: linear-gradient(180deg, #f9f9f9 0%, #f2f2f2 100%);
--gradient-brand: linear-gradient(135deg, #fa532d 0%, #901c09 100%);
--gradient-subtle: linear-gradient(180deg, #ffffff 0%, #f9f9f9 100%);
--duration: 200ms;
--duration-slow: 500ms;
--ease: cubic-bezier(0.25, 0.0, 0.0, 1.0);
--tracking-tight: -0.02em;
--tracking-normal: 0em;
--font-weight-heading: 900;
--font-weight-body: 400;
--button-radius: 0rem;
--card-radius: 0rem;
--input-radius: 0rem;
--badge-radius: 0rem;
--border-width: 1px;
--card-border-width: 0;
--input-border-width: 1px;
--button-border-width: 0;
--badge-border-width: 0;
--heading-transform: none;Install Targets
Registry
/r/lab-studio.jsonTailwind v4
@theme inline {
--font-heading: 'Barlow', sans-serif;
--font-sans: 'Inter', sans-serif;
--font-mono: 'Space Mono', monospace;
--color-background: hsl(var(--background));
--color-foreground: hsl(var(--foreground));
--color-card: hsl(var(--card));
--color-card-foreground: hsl(var(--card-foreground));
--color-popover: hsl(var(--popover));
--color-popover-foreground: hsl(var(--popover-foreground));
--color-primary: hsl(var(--primary));
--color-primary-foreground: hsl(var(--primary-foreground));
--color-secondary: hsl(var(--secondary));
--color-secondary-foreground: hsl(var(--secondary-foreground));
--color-muted: hsl(var(--muted));
--color-muted-foreground: hsl(var(--muted-foreground));
--color-accent: hsl(var(--accent));
--color-accent-foreground: hsl(var(--accent-foreground));
--color-destructive: hsl(var(--destructive));
--color-destructive-foreground: hsl(var(--destructive-foreground));
--color-border: hsl(var(--border));
--color-input: hsl(var(--input));
--color-ring: hsl(var(--ring));
--color-success: hsl(var(--success));
--color-success-foreground: hsl(var(--success-foreground));
--color-warning: hsl(var(--warning));
--color-warning-foreground: hsl(var(--warning-foreground));
--color-chart-1: hsl(var(--chart-1));
--color-chart-2: hsl(var(--chart-2));
--color-chart-3: hsl(var(--chart-3));
--color-chart-4: hsl(var(--chart-4));
--color-chart-5: hsl(var(--chart-5));
--radius-sm: 0rem;
--radius-md: 0rem;
--radius-lg: 0.125rem;
--radius-xl: 0.25rem;
--radius-button: 0rem;
--radius-card: 0rem;
--radius-input: 0rem;
--radius-badge: 0rem;
--border-width: 1px;
--card-border-width: 0;
--input-border-width: 1px;
--button-border-width: 0;
--badge-border-width: 0;
--shadow-sm: 0 1px 2px rgba(0,0,0,0.04);
--shadow-md: 0 2px 6px rgba(0,0,0,0.06);
--shadow-lg: 0 4px 12px rgba(0,0,0,0.08);
--shadow-xl: 0 8px 24px rgba(0,0,0,0.10);
--tracking-tight: -0.02em;
--tracking-normal: 0em;
--ease-kit: cubic-bezier(0.25, 0.0, 0.0, 1.0);
--duration-kit: 200ms;
--duration-kit-slow: 500ms;
--gradient-hero: linear-gradient(180deg, #f9f9f9 0%, #f2f2f2 100%);
--gradient-brand: linear-gradient(135deg, #fa532d 0%, #901c09 100%);
--gradient-subtle: linear-gradient(180deg, #ffffff 0%, #f9f9f9 100%);
--font-weight-heading: 900;
--font-weight-body: 400;
}Registry payload
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "lab-studio",
"type": "registry:theme",
"title": "Lab Studio",
"description": "Minimal editorial fashion-tech kit — vivid orange-red accent on a near-white neutral canvas with oversized lowercase display type and zero-radius geometry",
"categories": [
"editorial",
"fashion",
"minimal",
"bold",
"grotesque",
"orange",
"streetwear",
"flat",
"sharp",