saturation/uisaturation/ui
DocsComponentsBlocksPagesEmails
GitHub

Sections

IntroductionComponentsInstallationMCPThemingDesign

Components

Components

General

AvatarBadgeButtonKbdProgressSeparatorSkeletonSpin ResolveSpinnerSync ButtonTypography

Forms & Inputs

Address LookupCalendar PickerCheckboxComboboxDate PickerEmoji PickerFavicon SearchFieldInputInput GroupInput OTPRadio GroupSelectSliderSwitchTextareaToggleToggle Group

Data Display

AccordionAlertCardChartComparison SliderCredit CardData TableEmptyItemSaturation Credit CardTableTree

Navigation

BreadcrumbCommandMenubarNavigation MenuPaginationTabs

Overlays

CollapsibleContext MenuDialogDropdown MenuSheet

Layout

Button GroupFont ProviderWizard Split Layout

Feedback

Sonner

Animation & Effects

Animated GroupAnimated ListAnimated NumberBeamBlur FadeBorder TrailGlow EffectLiquid MetalLoading StateParallaxPixelProgressive BlurRippleSpotlightText EffectText Shimmer

Productivity

Agent ChatAI Chat InputCoding AgentFiltersFull CalendarKanbanNovel Editor
Docs/Components/Button

Button

A button component with multiple variants, sizes, and shapes.

Loading...

Installation

pnpm dlx shadcn@latest add @saturation-ui/button

Tailwind v4 — Source Scanning

The public shadcn registry installs component source into your project. If Tailwind v4 isn't scanning your components directory, add this to your CSS entry file:

@source "../components";

This ensures all utility classes in CVA variants and data attribute selectors are included in your build.

Usage

import { Button } from "@/components/ui/button"
<Button variant="default">Click me</Button>

Examples

Secondary

Loading...
Secondary variant button.

Outline

Loading...
Outline variant button.

Ghost

Loading...
Ghost variant button.

With Icon

Loading...
Button with icon and text.

Icon

Loading...
Icon-only buttons in multiple sizes.

Circle

Loading...
Circle shape button variants.

Loading

Loading...
Button with loading state.

Sizes

Loading...
Button size options from small to icon-only.

Shapes

Saturation extension — not in base shadcn:

  • default — Standard border radius
  • pill — Fully rounded
  • square — No border radius
  • circle — Perfect circle (use with icon sizes)

API Reference

PropTypeDefaultDescription
variant"default" | "destructive" | "outline" | "secondary" | "ghost" | "link""default"The visual style variant of the button.
size"default" | "xs" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg""default"The size of the button.
shape"default" | "pill" | "square" | "circle""default"The shape of the button. Saturation extension.
asChildbooleanfalseRender as child element via Radix Slot.
PreviousButton GroupNextCalendar Picker

On This Page

  • Installation
  • Usage
  • Examples
  • Secondary
  • Outline
  • Ghost
  • With Icon
  • Icon
  • Circle
  • Loading
  • Sizes
  • Shapes
  • API Reference
defaultpillsquarecircle