shadcn
shadcn component usage conventions
shadcn — Native Look, No Overrides
Use shadcn components as-is. No custom color overrides, no inline style hacks.
Colors
Use semantic Tailwind classes ONLY. Never hardcode hex colors in className or style.
text-foreground/text-muted-foreground/text-destructive— NEVERtext-red-500,text-green-500bg-primary/bg-muted/bg-destructive— NEVERbg-blue-500,bg-red-500text-primaryfor interactive links — NEVERtext-blue-500
Conditional classNames
ALWAYS use cn() for conditional classes:
className={cn('base-classes', condition && 'conditional-class')}
className={cn('base-classes', variant === 'a' ? 'class-a' : 'class-b')}NEVER use template literals for conditional classNames.