Murmur

A living dot-sphere that shows what an AI is doing: thinking, working, listening, idle. Free states ship here; Pro states and extra motion come from @shavin/fx.

// Plain markup
import { Murmur } from "@shavin/ui";

Free states

idle

thinking

working

listening

Component Source
<Murmur state="idle" />
<Murmur state="thinking" />
<Murmur state="working" />
<Murmur state="listening" level={0.6} />

Inline size

Thinking…

Component Source
<Murmur state="thinking" size={20} label="" />

Pro states

@shavin/fx adds searching, composing, weaving and connecting. Call registerMurmurPro() once, then use them by name.

Props

PropTypeDefaultDescription
stateMurmurStatethinkingWhich motion to play. Default "thinking".
sizenumber24Diameter in px. Default 24.
levelnumber—Live input level 0-1 that drives "listening".
speednumber1Speed multiplier. Default 1.
dotsnumberscalesNumber of dots. Default scales with size.
dotSizenumber1Dot size multiplier. Default 1.
labelstringisAccessible name. Default is the state, e.g. "Thinking". Pass "" to hide it from assistive tech when a visible label sits beside it.
Configure Theme
Theme
Accent Color
Custom
Gray Family
Appearance
Radius
Scaling
Panel Style
Heading Font
Body Font