Spinner

A React component in Beamline's Feedback category, in the free sample.

A ring that spins while work runs and closes into a drawn check or cross when it ends.

Use it for

  • Short indeterminate work tied to one row, button or step.

Not for

  • Page loading → skeleton.
  • Known progress → progress.

Anatomy

  • track
  • arc
  • check / cross

Variants

  • size: sm, md, lg

States

  • loading
  • success
  • error

Keyboard

  • role=status while loading; role=img with Done/Failed after.

Motion

The loading ring rotates while visible; managed/OS reduction holds the ring still. Success/error retains a meaningful shape and label; draw and arc use semantic timings.

Props

PropTypeDefaultDescription
state'loading'|'success'|'error'—
size'sm'|'md'|'lg'—
labelstring—
classNamesSpinnerClassNames—
style / refCSSProperties / native Ref—native span

Dependencies

motion

Import

import { Spinner } from "@/components/spinner/spinner";

Get it

Spinner is part of Beamline: 190 React components and screens your coding agent (Claude Code, Codex, Cursor or any MCP client) installs into your app through Beamline's MCP server, as a ready-built package or as plain React source you can change. $49 one payment (regular $200), no subscription, a year of updates, one licence for your whole team. Spinner is in the free sample, which costs nothing. Get Beamline · Connect your agent

More in Feedback

  • Alert: A message that stays until it is dealt with: what happened, what to do, an action; danger and warning are announced; dismissing folds its height away.
  • Announcement bar: A banner across the top for news and offers: messages take turns, a countdown ticks, and dismissing folds it away and can remember it.
  • Empty state: What a place will hold and the first step to fill it, instead of a blank; a compact size for panels and filtered tables.
  • Notification centre: Updates that wait to be read: a bell with the unread count opens All / Unread, new and earlier groups, and per item mark read or dismiss.
  • Progress: How much of a known task is done, or a moving bar when the length is unknown, with an optional label and value.
  • Skeleton: Holds the shape of content while it loads, then crossfades into it, so nothing jumps.
  • Usage meter: An allowance and what fills it: one bar split by source, the room left, a warning near the limit and the overflow in its own red well past a notch at the…