chat-ui▌
inferen-sh/skills · updated Apr 8, 2026
React/Next.js chat UI components for building custom messaging interfaces and AI assistant conversations.
- ›Includes four core components: ChatContainer for layout, ChatMessage for user/assistant/system messages, ChatInput for message submission, and TypingIndicator for loading states
- ›Supports role-based message variants (user, assistant, system) with automatic alignment and styling
- ›Built on Tailwind CSS and shadcn/ui design tokens with customizable className props
- ›Installable via s
Chat UI Components
Chat building blocks from ui.inference.sh.

Quick Start
# Install chat components
npx shadcn@latest add https://ui.inference.sh/r/chat.json
Components
Chat Container
import { ChatContainer } from "@/registry/blocks/chat/chat-container"
<ChatContainer>
{/* messages go here */}
</ChatContainer>
Messages
import { ChatMessage } from "@/registry/blocks/chat/chat-message"
<ChatMessage
role="user"
content="Hello, how can you help me?"
/>
<ChatMessage
role="assistant"
content="I can help you with many things!"
/>
Chat Input
import { ChatInput } from "@/registry/blocks/chat/chat-input"
<ChatInput
onSubmit={(message) => handleSend(message)}
placeholder="Type a message..."
disabled={isLoading}
/>
Typing Indicator
import { TypingIndicator } from "@/registry/blocks/chat/typing-indicator"
{isTyping && <TypingIndicator />}
Full Example
import {
ChatContainer,
ChatMessage,
ChatInput,
TypingIndicator,
} from "@/registry/blocks/chat"
export function Chat() {
const [messages, setMessages] = useState([])
const [isLoading, setIsLoading] = useState(false)
const handleSend = async (content: string) => {
setMessages(prev => [...prev, { role: 'user', content }])
setIsLoading(true)
// Send to API...
setIsLoading(false)
}
return (
<ChatContainer>
{messages.map((msg, i) => (
<ChatMessage key={i} role={msg.role} content={msg.content} />
))}
{isLoading && <TypingIndicator />}
<ChatInput onSubmit={handleSend} disabled={isLoading} />
</ChatContainer>
)
}
Message Variants
| Role | Description |
|---|---|
user |
User messages (right-aligned) |
assistant |
AI responses (left-aligned) |
system |
System messages (centered) |
Styling
Components use Tailwind CSS and shadcn/ui design tokens:
<ChatMessage
role="assistant"
content="Hello!"
className="bg-muted"
/>
Related Skills
# Full agent component (recommended)
npx skills add inference-sh/skills@agent-ui
# Declarative widgets
npx skills add inference-sh/skills@widgets-ui
# Markdown rendering
npx skills add inference-sh/skills@markdown-ui
Documentation
- Chatting with Agents - Building chat interfaces
- Agent UX Patterns - Chat UX best practices
- Real-Time Streaming - Streaming responses
Component docs: ui.inference.sh/blocks/chat
Ratings
4.5★★★★★37 reviews- ★★★★★Sakura Zhang· Dec 16, 2024
Solid pick for teams standardizing on skills: chat-ui is focused, and the summary matches what you get after install.
- ★★★★★Dhruvi Jain· Dec 12, 2024
chat-ui has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Pratham Ware· Dec 8, 2024
chat-ui is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Nikhil Rao· Dec 8, 2024
Keeps context tight: chat-ui is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Mateo Haddad· Nov 27, 2024
I recommend chat-ui for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Nikhil Patel· Nov 7, 2024
chat-ui has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Oshnikdeep· Nov 3, 2024
Solid pick for teams standardizing on skills: chat-ui is focused, and the summary matches what you get after install.
- ★★★★★Aarav Brown· Nov 3, 2024
chat-ui fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
- ★★★★★Ira Diallo· Oct 26, 2024
Useful defaults in chat-ui — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Ganesh Mohane· Oct 22, 2024
We added chat-ui from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
showing 1-10 of 37