Streaming Message
ProGood motion is mostly restraint. Choose one thing to move, give it a single continuous path, and let everything else hold still. When a transition feels expensive, it's usually because two or three elements are competing for the same moment of attention.
Installation
npx shadcn add @useplanes/streaming-message
Works once the @useplanes registry is set up in your project (one-time). After that, copy and run commands directly.
Unlock with Planes Pro
$99 once · 161 Pro components · lifetime updates.
import { StreamingMessage } from "@/components/ui/StreamingMessage";
<StreamingMessage
content={response}
onRegenerate={() => regenerate()}
/>Use cases
Chat responses
Render assistant replies as they stream from the model.
Generated copy
Reveal AI-written summaries or drafts with a live, typing feel.
Inline answers
Stream a short answer under a search box or command result.
Onboarding tips
Animate a friendly message the first time a user lands somewhere.