Forms
Navigation & layout
Data display & feedback
Date & time
Browse components
← All components
Prompt Input
Auto-growing composer with tools, model picker slot, and send/stop.
Install
npx shadcn@latest add https://ui.anuragroy.dev/r/prompt-input.jsonPreview
Loading preview…
Installation
Add the component from this site. The shadcn CLI fetches the registry JSON over HTTPS — no named registry submission required.
Terminal
npx shadcn@latest add https://ui.anuragroy.dev/r/prompt-input.jsonGitHub fallback if the website is down:
Terminal
npx shadcn@latest add https://raw.githubusercontent.com/anurag-roy/ui.anuragroy.dev/main/public/r/prompt-input.jsonUsage
Import paths follow your components.json aliases. After install, the default path is @/components/ui/prompt-input.
Import
import { PromptInput, PromptInputBody, PromptInputSubmit, PromptInputTextarea, PromptInputToolbar, PromptInputTools} from "@/components/ui/prompt-input"example.tsx
import { PromptInput, PromptInputBody, PromptInputSubmit, PromptInputTextarea, PromptInputToolbar, PromptInputTools,} from "@/components/ui/prompt-input"export function Example() { return ( <PromptInput onSubmit={(event) => { event.preventDefault() }} > <PromptInputBody> <PromptInputTextarea placeholder="Ask the agent…" /> </PromptInputBody> <PromptInputToolbar> <PromptInputTools /> <PromptInputSubmit /> </PromptInputToolbar> </PromptInput> )}API Reference
PromptInput
A `form`. Enter submits; Shift+Enter inserts a newline.
| Prop | Type | Default |
|---|---|---|
| status | "idle" | "submitted" | "streaming" | "idle" |
| onStop | () => void | — |
- status — When `streaming`, the submit control becomes stop.