Accordion

Default

Bordered

Alert

Variants

Without icon

Title only

Long content

Fit width (hug content)

Rich content

Avatar

Sizes & Fallback

SM
MD
LG
J
User

Badge

Variants

DefaultSecondaryOutlineDestructiveSuccessWarning

Sizes

SmallMedium

Button

Variants

Sizes

With icon

Loading

States

Card

Default Card

Basic card with subtle shadow

Card content goes here.

Elevated Card

Soft raised shadow

More prominent elevation.

Interactive Card

Hover to see floating effect

Cursor pointer, hover elevation.

Checkbox

Code

Inline code

Run npx softuq init to set up your project.

In context

Set data-theme="light" on <html> to enable light mode. All tokens use oklch() color space.

CodeBlock

terminal
# Install dependencies
pnpm install

# Start dev server
pnpm dev

CodeBlock with JSX

page.tsx
import { Button } from "@/components/ui/button";

export default function Page() {
  return (
    <Button variant="default">Click me</Button>
  );
}

CodeBlock without title

const greeting = "Hello, world!";

Dialog

Empty

No messages

You're all caught up. New messages will appear here.

Form Text

We'll never share your email with anyone.

Input & Textarea

This is a help text below the input.

Kbd

Sizes

Combos

+KCtrl+Shift+PEscto close

Label

Pagination

Sizes

Few pages

Popover

Progress

Progress45%

Radio

Section Nav

Alphabetical groups

Select

Separator

Content above

Content below

LeftRight

Sheet

Skeleton

Slider

Single

40

Range

2575

Sizes

Disabled

Spinner

Sizes

With color

In context

Fetching data...

Table

A list of recent invoices.
InvoiceStatusMethodAmount
INV001PaidCredit Card$250.00
INV002PendingPayPal$150.00
INV003UnpaidBank Transfer$350.00
INV004PaidCredit Card$450.00
Total$1,200.00

Tabs

Default

Account settings content.

Pills

All items.

Underline

Overview dashboard.

Tag

Variants

DefaultAccentSuccessWarningDestructive

Dismissible

RemovableAccentSuccessError

Sizes

SmallMedium

Disabled

DisabledDisabled dismiss

Toast

Variants

Title only

Long content (truncated)

Custom duration

Position

Toggle

With label

Receive push alerts on this device.

Toggle Group

Single (alignment)

Multiple (text style)

Outline variant

Sizes

Tooltip