Get started
Fabricator UI

Search documentation

Search pages, components, blocks, styles and colours.

Spinner

PreviousNext

An indicator that can be used to show a loading state.

Processing payment...
$100.00

Installation

bunx --bun fabricator-ui@latest add spinner

Usage

import { Spinner } from "@/components/ui/spinner"
<Spinner />

Customization

You can replace the default spinner icon with any other icon by editing the Spinner component.

components/ui/spinner.tsx
import { cn } from "cn"
import { LoaderIcon } from "lucide-react"
 
function Spinner({ className, ...props }: React.ComponentProps<"svg">) {
  return (
    <LoaderIcon
      role="status"
      aria-label="Loading"
      className={cn("size-4 animate-spin", className)}
      {...props}
    />
  )
}
 
export { Spinner }

Size

Use the size-* utility class to change the size of the spinner.

Button

Add a spinner to a button to indicate a loading state. Place the <Spinner /> before the label with data-icon="inline-start" for a start position, or after the label with data-icon="inline-end" for an end position.

Badge

Add a spinner to a badge to indicate a loading state. Place the <Spinner /> before the label with data-icon="inline-start" for a start position, or after the label with data-icon="inline-end" for an end position.

SyncingUpdatingProcessing

Input Group

Validating...

Empty

Processing your request
Please wait while we process your request. Do not refresh the page.