# Spinner: Sizes

> `sm`, `default`, `lg` and `xl` for both variants.

Example: https://hextaui.com/docs/spinner/examples/sizes
Component docs: https://hextaui.com/docs/spinner.md

## Add this example

```bash
npx shadcn@latest add https://hextaui.com/r/spinner-sizes.json
```

This adds `components/examples/spinner/sizes.tsx` with the Spinner component and the HextaUI theme tokens.

## Source

```tsx title="components/examples/spinner/sizes.tsx"
import { Spinner } from "@/components/ui/spinner"

const sizes = ["sm", "default", "lg", "xl"] as const

export function SpinnerSizes() {
  return (
    <div className="flex flex-col gap-6">
      <div className="flex items-center gap-6">
        {sizes.map((size) => (
          <Spinner key={size} size={size} />
        ))}
      </div>
      <div className="flex items-center gap-6">
        {sizes.map((size) => (
          <Spinner key={size} size={size} variant="ring" />
        ))}
      </div>
    </div>
  )
}
```

## Props in this example

### Spinner

| Prop | Type | Default | Description |
| --- | --- | --- | --- |
| `variant` | `"ticks" \| "ring"` | `"ticks"` |  |
| `size` | `"sm" \| "default" \| "lg" \| "xl" \| null` | `"default"` | null leaves sizing to the parent. |

## More Spinner examples

- [Without flicker](https://hextaui.com/docs/spinner/examples/delayed.md)
- [Inline](https://hextaui.com/docs/spinner/examples/inline.md)
- [In buttons](https://hextaui.com/docs/spinner/examples/button.md)
