Skip to content

Button

Allows users to trigger actions, submit forms, or navigate with a single click, providing clear visual feedback and hover effects.

5.2 KB
•
Updated on September 20, 2026

Installation

Bash

Usage

Code
Code

You can use the render prop to render another element (like Next.js Link or React Router) with button styles.

Code

Features

Variants

Sizes

Standard sizing options: xs, sm, default, lg, xl.

Icon Sizes

Square button sizes designed specifically for single icons: icon-xs, icon-sm, icon, icon-lg, icon-xl.

Loading State

Support for native loading spinners via the loading prop.

Disabled

Button rendered in a disabled state via the disabled prop.

With Icon

API Reference

Button Props

When loading is true, the component:

  • Renders a spinner (data-slot="button-loading-indicator")
  • Adds data-loading on the button root
  • Disables interaction and sets aria-disabled="true"
  • Preserves button layout without jumping

Examples

Custom loading button with manual Spinner
Expandable show more/less toggle button
Card-style button with heading and description
Directional pad control buttons
Outline like button with count
Social login icon buttons
Star button with count badge
Button group with QR code icon and sign in
Button with avatar
Pill-shaped button with rounded-full styling
Button with animated arrow on hover
Button with keyboard shortcut indicator
Button with notification badge
Paired buttons (Cancel/Save)
Button with animated status dot
Icon-only copy button with feedback
Copy button with feedback
Rotating icon button (FAB-style toggle)
Social login buttons (Google, X, GitHub)
Hamburger menu button with animated icon
Download button with progress and cancel action