PixilUI and assistant-ui

Components, runtimes and primitives for building AI chat interfaces in React, Vue, React Native and the terminal, with a hosted service, Assistant Cloud, for conversations and runs. MIT.

In short

assistant-ui is a full chat runtime: thread, composer and message primitives, adapters for the AI SDK, LangGraph, Mastra and more, and Tool UI for rendering tool calls. If you need the chat itself, start there. PixilUI covers the agent moments with every state designed: an approval card with risk and a receipt, a run timeline with a live timer, a tool call row. The two work in one app.

Checked against assistant-ui's own docs on .

Side by side

Questionassistant-uiPixilUI
What it isChat runtime, primitives and prebuilt chat elementsDesigned components for agent moments, as a shadcn registry
FrameworksReact, Vue, React Native and the terminalReact 19
Model backendsAdapters for the AI SDK, LangGraph, Mastra, the OpenAI Agents SDK, AG-UI and custom runtimesNone needed: items take plain props
Tool callsTool UI: your own React renderer for each tool callTool call row with a live timer and the input and output JSON one click away
Installnpx assistant-ui@latest initnpx shadcn@latest add @pixilui/approval-card
License and priceMIT; Assistant Cloud is a hosted serviceFree items under MIT. Pro $199 once (the first 100 at $99 when Pro opens), Pro yearly $129, Team $599 once for 10 people

What assistant-ui is good at

  • A complete chat: thread, composer, message list, branching, attachments and auto-scroll, with accessibility built in, per its docs.
  • Backends: documented adapters for the Vercel AI SDK, LangGraph, Mastra, the OpenAI Agents SDK, AG-UI and custom runtimes.
  • Tool UI: render each tool call as your own React component.
  • Beyond React on the web: Vue, React Native and terminal packages.

What PixilUI adds

  • Agent moments designed in full, with in-progress, waiting, error and finished states and the motion between them: approval card, run timeline, tool call row, thinking state, streaming text.
  • No runtime: items take plain props, so they render inside an assistant-ui thread or anywhere else in the app.
  • Pro pieces around the chat: an agent inbox for every approval and failed run, and an eval table.
  • A markdown twin for every page and generated llms files, so coding agents read the same docs you do.

Install

assistant-ui

npx assistant-ui@latest initpnpm dlx assistant-ui@latest inityarn dlx assistant-ui@latest initbunx --bun assistant-ui@latest init
npx shadcn@latest add @assistant-ui/thread @assistant-ui/thread-listpnpm dlx shadcn@latest add @assistant-ui/thread @assistant-ui/thread-listyarn dlx shadcn@latest add @assistant-ui/thread @assistant-ui/thread-listbunx --bun shadcn@latest add @assistant-ui/thread @assistant-ui/thread-list

PixilUI, after adding the registry to components.json (installation)

npx shadcn@latest add @pixilui/approval-cardpnpm dlx shadcn@latest add @pixilui/approval-cardyarn dlx shadcn@latest add @pixilui/approval-cardbunx --bun shadcn@latest add @pixilui/approval-card

Using both

Use assistant-ui for the conversation and its runtime, and render PixilUI items where the run needs them: an approval card from a Tool UI renderer when a tool waits for a person, a run timeline in a side panel, a thinking state while the model reasons.

Questions

Is PixilUI an assistant-ui alternative?

Not for the chat runtime. assistant-ui manages threads, messages and the connection to your model; PixilUI has no runtime. PixilUI is the alternative for the agent moments (approvals, runs, tool calls, thinking), and many apps use both.

Can I use PixilUI components inside assistant-ui?

Yes. PixilUI items take plain props, so an assistant-ui Tool UI renderer can return one, for example an approval card for a tool call that needs a person's yes, or a tool call row for the result.

Which one is free?

assistant-ui is MIT. PixilUI's free items are MIT too; Pro items need a paid license.

More comparisons

Sources

Read on . If something here no longer matches assistant-ui's site, write to hello@pixilui.com and we will fix it.