Pulse
A single ring breathes in place.
<ThinkingIndicator kind="pulse" label="Processing..." />Shows that an AI response is being generated.
import { ThinkingIndicator } from "@/fragments/ui";Source<ThinkingIndicator kind="dots" label="Thinking..." />npx @usefragments/cli add thinkingindicatorWrites src/fragments/ui/components/ThinkingIndicator plus what it imports, the globals stylesheet, and .fragments/registry-lock.json, then prints the packages to add. No account, no key.
Your own registry: publish from Fragments Cloud and add --registry org/name. Connect a workspace.
ThinkingIndicator is a compound: import the root and reach its parts through dot notation.
ThinkingIndicator.StepsThinkingIndicator.StepA single ring breathes in place.
<ThinkingIndicator kind="pulse" label="Processing..." />A rotating arc, for work with a definite end.
<ThinkingIndicator kind="spinner" label="Loading..." />A live counter reassures the reader during long waits.
<ThinkingIndicator
kind="dots"
label="Generating response..."
showElapsed
/>Finished, running, and queued stages read at a glance.
<ThinkingIndicator
kind="spinner"
label="Working..."
steps={[
{ id: '1', label: 'Analyzing request', status: 'complete' },
{ id: '2', label: 'Searching knowledge base', status: 'pending' },A failed stage turns red while the next one retries.
<ThinkingIndicator
kind="spinner"
label="Retrying..."
steps={[
{ id: '1', label: 'Connecting to API', status: 'complete' },
{ id: '2', label: 'Fetching data', status: 'error' },Name the actual task instead of a generic status.
<ThinkingIndicator
kind="dots"
label="Claude is writing code..."
/>Prop | Type | Default | Description |
|---|---|---|---|
active | boolean | true | Whether thinking is active |
label | string | Thinking... | Status text |
kind | enumdotspulsespinner | dots | Animation style |
showElapsed | boolean | false | Show elapsed time |
steps | array | Not set | Multi-step progress array |