Generate feedback colors (success, warning, error, and info) for shadcn/ui

Go to generator

10000+Themes for shadcn/ui

Free for shadcn/ui

Free is a shadcn/ui theme built around an orange primary color (#d4995e) with muted light orange accents (#d8d4cf). The light mode uses a neutral background (#fcfaf8). Dark mode keeps the orange primary (#d4995e) on an orange-tinted background (#0c0804).

Color palette

TokenLightDark
Background
#fcfaf8snow
#0c0804black
Foreground
#140d06black
#ffffffwhite
Card
#faf7f5whitesmoke
#100a05black
Card foreground
#100a05black
#ffffffwhite
Popover
#fcfaf8snow
#0c0804black
Popover foreground
#140d06black
#ffffffwhite
Primary
#d4995esandybrown
#d4995esandybrown
Primary foreground
#000000black
#000000black
Secondary
#d8d4cflightgrey
#262421black
Secondary foreground
#413b34darkslategray
#c1bdb8silver
Muted
#e4e0ddgainsboro
#221f1bblack
Muted foreground
#67615bdimgray
#a49e98darkgray
Accent
#d8d4cflightgrey
#262421black
Accent foreground
#413b34darkslategray
#c1bdb8silver
Destructive
#742d07saddlebrown
#f26418chocolate
Destructive foreground
#fbcbb2peachpuff
#000000black
Border
#e5e7eblavender
#1f2937darkslategray
Input
#e5e7eblavender
#1f2937darkslategray
Ring
#d4995esandybrown
#d4995esandybrown

Contrast

WCAG 2 contrast ratios between each background and its foreground color.

Light mode
Text on background18.48:1AAA
Text on card18.47:1AAA
Primary button8.52:1AAA
Secondary button7.48:1AAA
Muted text4.66:1AA
Accent7.48:1AAA
Destructive6.75:1AA
Dark mode
Text on background19.99:1AAA
Text on card19.66:1AAA
Primary button8.52:1AAA
Secondary button8.29:1AAA
Muted text6.21:1AA
Accent8.29:1AAA
Destructive6.59:1AA

CSS variables

Paste this into your globals.css to use Free in your shadcn/ui project.

:root {
  --radius: 0.5rem;
  --background: oklch(0.986 0.003 67.79);
  --foreground: oklch(0.165 0.019 68.521);
  --muted: oklch(0.91 0.006 67.751);
  --muted-foreground: oklch(0.496 0.012 67.552);
  --popover: oklch(0.986 0.003 67.79);
  --popover-foreground: oklch(0.165 0.019 68.521);
  --card: oklch(0.978 0.004 67.775);
  --card-foreground: oklch(0.151 0.017 71.619);
  --border: oklch(0.928 0.006 264.531);
  --input: oklch(0.928 0.006 264.531);
  --primary: oklch(0.728 0.104 64.929);
  --primary-foreground: oklch(0 0 0);
  --secondary: oklch(0.871 0.008 67.716);
  --secondary-foreground: oklch(0.355 0.014 67.346);
  --accent: oklch(0.871 0.008 67.716);
  --accent-foreground: oklch(0.355 0.014 67.346);
  --destructive: oklch(0.393 0.11 43.504);
  --destructive-foreground: oklch(0.878 0.064 49.804);
  --ring: oklch(0.728 0.104 64.929);
  --chart-1: oklch(0.728 0.104 64.929);
  --chart-2: oklch(0.871 0.008 67.716);
  --chart-3: oklch(0.871 0.008 67.716);
  --chart-4: oklch(0.894 0.007 67.737);
  --chart-5: oklch(0.731 0.109 64.681);
}

.dark {
  --radius: 0.5rem;
  --background: oklch(0.136 0.014 74.972);
  --foreground: oklch(1 0 180);
  --muted: oklch(0.24 0.008 67.424);
  --muted-foreground: oklch(0.703 0.011 67.651);
  --popover: oklch(0.136 0.014 74.972);
  --popover-foreground: oklch(1 0 180);
  --card: oklch(0.151 0.016 71.532);
  --card-foreground: oklch(1 0 180);
  --border: oklch(0.278 0.03 256.848);
  --input: oklch(0.278 0.03 256.848);
  --primary: oklch(0.728 0.104 64.929);
  --primary-foreground: oklch(0 0 0);
  --secondary: oklch(0.261 0.006 67.564);
  --secondary-foreground: oklch(0.8 0.008 67.707);
  --accent: oklch(0.261 0.006 67.564);
  --accent-foreground: oklch(0.8 0.008 67.707);
  --destructive: oklch(0.673 0.191 43.041);
  --destructive-foreground: oklch(0 0 0);
  --ring: oklch(0.728 0.104 64.929);
  --chart-1: oklch(0.728 0.104 64.929);
  --chart-2: oklch(0.261 0.006 67.564);
  --chart-3: oklch(0.261 0.006 67.564);
  --chart-4: oklch(0.293 0.007 67.549);
  --chart-5: oklch(0.731 0.109 64.681);
}