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

Go to generator

10000+Themes for shadcn/ui

Monitor for shadcn/ui

Monitor is a shadcn/ui theme built around a vivid red primary color (#fd231c) with vivid orange accents (#fd941c). The light mode uses a neutral background (#ffffff). Dark mode keeps the vivid red primary (#fd231c) on a neutral background (#000000).

Color palette

TokenLightDark
Background
#ffffffwhite
#000000black
Foreground
#120302black
#ffffffwhite
Card
#fcfcfcsnow
#030303black
Card foreground
#0e0202black
#ffffffwhite
Popover
#fcfcfcsnow
#030303black
Popover foreground
#0e0202black
#ffffffwhite
Primary
#fd231corangered
#fd231corangered
Primary foreground
#ffffffwhite
#ffffffwhite
Secondary
#fd1c85deeppink
#fd1c85deeppink
Secondary foreground
#ffffffwhite
#ffffffwhite
Muted
#eae6e8lavender
#191517black
Muted foreground
#534b4fdarkslategray
#b4acb0darkgray
Accent
#fd941cdarkorange
#fd941cdarkorange
Accent foreground
#000000black
#000000black
Destructive
#b02d0cfirebrick
#f15c37tomato
Destructive foreground
#ffffffwhite
#000000black
Border
#e5e7eblavender
#1f2937darkslategray
Input
#e5e7eblavender
#1f2937darkslategray
Ring
#fd231corangered
#fd231corangered

Contrast

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

Light mode
Text on background20.19:1AAA
Text on card19.98:1AAA
Primary button3.87:1AA Large
Secondary button3.70:1AA Large
Muted text6.82:1AA
Accent9.40:1AAA
Destructive6.48:1AA
Dark mode
Text on background21.00:1AAA
Text on card20.67:1AAA
Primary button3.87:1AA Large
Secondary button3.70:1AA Large
Muted text8.16:1AAA
Accent9.40:1AAA
Destructive6.32:1AA

CSS variables

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

:root {
  --radius: 0.5rem;
  --background: oklch(1 0 180);
  --foreground: oklch(0.129 0.035 27.058);
  --muted: oklch(0.929 0.005 347.056);
  --muted-foreground: oklch(0.422 0.012 347.661);
  --popover: oklch(0.992 0 161.565);
  --popover-foreground: oklch(0.115 0.03 27.062);
  --card: oklch(0.992 0 161.565);
  --card-foreground: oklch(0.115 0.03 27.062);
  --border: oklch(0.928 0.006 264.531);
  --input: oklch(0.928 0.006 264.531);
  --primary: oklch(0.634 0.245 28.915);
  --primary-foreground: oklch(1 0 180);
  --secondary: oklch(0.649 0.252 1.325);
  --secondary-foreground: oklch(1 0 180);
  --accent: oklch(0.761 0.17 61.087);
  --accent-foreground: oklch(0 0 0);
  --destructive: oklch(0.502 0.173 33.967);
  --destructive-foreground: oklch(1 0 180);
  --ring: oklch(0.634 0.245 28.915);
  --chart-1: oklch(0.634 0.245 28.915);
  --chart-2: oklch(0.649 0.252 1.325);
  --chart-3: oklch(0.761 0.17 61.087);
  --chart-4: oklch(0.658 0.246 359.482);
  --chart-5: oklch(0.639 0.25 29.034);
}

.dark {
  --radius: 0.5rem;
  --background: oklch(0 0 0);
  --foreground: oklch(1 0 180);
  --muted: oklch(0.201 0.008 347.9);
  --muted-foreground: oklch(0.752 0.01 347.277);
  --popover: oklch(0.092 0 180);
  --popover-foreground: oklch(1 0 180);
  --card: oklch(0.092 0 180);
  --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.634 0.245 28.915);
  --primary-foreground: oklch(1 0 180);
  --secondary: oklch(0.649 0.252 1.325);
  --secondary-foreground: oklch(1 0 180);
  --accent: oklch(0.761 0.17 61.087);
  --accent-foreground: oklch(0 0 0);
  --destructive: oklch(0.665 0.191 35.083);
  --destructive-foreground: oklch(0 0 0);
  --ring: oklch(0.634 0.245 28.915);
  --chart-1: oklch(0.634 0.245 28.915);
  --chart-2: oklch(0.649 0.252 1.325);
  --chart-3: oklch(0.761 0.17 61.087);
  --chart-4: oklch(0.658 0.246 359.482);
  --chart-5: oklch(0.639 0.25 29.034);
}