Frontend

chat-ui

inferen-sh/skills · updated Apr 8, 2026

$npx skills add https://github.com/inferen-sh/skills --skill chat-ui
summary

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
skill.md

Chat UI Components

Chat building blocks from ui.inference.sh.

Chat UI Components

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

Component docs: ui.inference.sh/blocks/chat

general reviews

Ratings

4.537 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

1 / 4