Button
Primary, secondary, outline, ghost and danger, in three sizes. 40px tall by default with Sen 14/600.
- Color 150ms ease
- Press: 1px down + 98.5% scale
- Disabled 50% opacity
import { Button } from "@/components/ui/button";Components · 8
Primary, secondary, outline, ghost and danger, in three sizes. 40px tall by default with Sen 14/600.
import { Button } from "@/components/ui/button";Shows a spinner in place while an action runs, keeps its width, then confirms.
<Button loading={isSaving}>Save changes</Button>Compact actions. Hover or focus to see the tooltip with the button's name.
import { IconButton } from "@/components/ui/icon-button";On/off action such as saving a listing. The count rolls to its new value.
import { LikeButton } from "@/components/ui/like-button";Copies a value and confirms in place.
ariseui.app/invite/4B-2026import { CopyButton } from "@/components/ui/copy-button";The main action on mobile screens, expanding into related actions.
import { SpeedDial } from "@/components/ui/speed-dial";Inline links draw an underline; call-to-action links nudge their arrow.
Rent is due on the 1st. Read the late fee policy or update your payment method before then.
View all invoices
import { TextLink } from "@/components/ui/text-link";Switch this whole site between light and dark. The new theme spreads out from where you click.
import { ThemeToggle, ThemeSwitcher } from "@/components/ui/theme-toggle";