Skip to content

assistant-ui vs shadcn/ui

Which should you use? A side-by-side look at what each one does, who it suits, what it costs, how hard it is to set up, and where each falls short.

assistant-ui

Open source · MIT

A TypeScript/React library for building AI chat interfaces in your app.

shadcn/ui

Open source · MIT

Copy-in React UI components you customize as your own code, built on Tailwind CSS.

The short answer

Choose assistant-ui if you need…

  • React or Next.js developers adding an AI chat panel to an existing app
  • Teams that want to style chat UI with their own design system or shadcn/ui
  • Developers who need tool-call rendering or inline human approval in a chat
  • Projects already using the Vercel AI SDK or LangGraph

Choose shadcn/ui if you need…

  • Developers building React or Next.js interfaces who want full control over component code
  • Teams that want a consistent design system they can change freely
  • Designers working with developers who need components that match a custom look
  • Projects already using Tailwind CSS, which the topics list suggests is the styling base

Side-by-side

assistant-uishadcn/ui
TypeLibraryLibrary
PriceFree and open sourceFree and open source
LicenceMITMIT
GitHub stars12.9k127k
Setup difficultyIntermediateIntermediate
How you get itInstall with a package managerSee the README
Main languageTypeScriptTypeScript
Last code update4 days ago4 days ago

What each one is

assistant-ui

assistant-ui is an open-source TypeScript and React library for building chat interfaces like ChatGPT inside your own web app. It provides composable chat pieces such as threads, messages, and a composer, and connects them to backends like the Vercel AI SDK, LangGraph, or your own custom backend.

shadcn/ui

shadcn/ui is a collection of UI components (buttons, forms and similar pieces) that you add to your own project as source code rather than installing as a locked package. You can then edit, extend and restyle them. The README describes it as a starting point for building your own component library.

Best for

assistant-ui

  • React or Next.js developers adding an AI chat panel to an existing app
  • Teams that want to style chat UI with their own design system or shadcn/ui
  • Developers who need tool-call rendering or inline human approval in a chat
  • Projects already using the Vercel AI SDK or LangGraph

shadcn/ui

  • Developers building React or Next.js interfaces who want full control over component code
  • Teams that want a consistent design system they can change freely
  • Designers working with developers who need components that match a custom look
  • Projects already using Tailwind CSS, which the topics list suggests is the styling base

Strengths

assistant-ui

  • Composable primitives let you build custom chat layouts instead of using one fixed component
  • Includes streaming, attachments, markdown, and accessibility features according to the README
  • Typed TypeScript APIs for runtimes, tool schemas, and message parts

shadcn/ui

  • Component code lives in your project, so you can change it without waiting on an upstream release
  • The README states the components are open source and MIT licensed
  • Large community interest, with over 120,000 stars on GitHub

Not ideal for

assistant-ui

  • People who want a finished chat app without writing any code, since it is a library for developers
  • Projects not using React, because the library is built for React and TypeScript
  • Teams that need a single drop-in component with no customization, since the README describes composing primitives instead

shadcn/ui

  • People who want a finished, unstyled-free app or website template; this is a set of building blocks
  • Developers who do not use React, since the topics point to a React-focused stack
  • Beginners without basic web development knowledge, as adapting components requires reading code

Trade-offs

assistant-ui

  • Requires React and TypeScript knowledge, so it is not beginner-friendly for non-developers
  • The README is truncated and does not fully document every backend or setup detail
  • Being a library, you still need to supply and pay for your own model provider and backend

shadcn/ui

  • Because you own the code, you are responsible for updating components yourself
  • The README provided is short, so detailed setup and feature information lives on the external docs site
  • Relies on a specific stack (React and Tailwind) as indicated by the topics, which limits use elsewhere

Getting started

assistant-ui

Create a new project with the CLI

npx assistant-ui@latest create

Add to an existing project with the CLI

npx assistant-ui@latest init
Step-by-step guide: how to use assistant-ui

shadcn/ui

Clone the repository

git clone https://github.com/shadcn-ui/ui
Step-by-step guide: how to use shadcn/ui

Frequently asked questions

What is the difference between assistant-ui and shadcn/ui?

assistant-ui: A TypeScript/React library for building AI chat interfaces in your app. shadcn/ui: Copy-in React UI components you customize as your own code, built on Tailwind CSS. assistant-ui suits react or next.js developers adding an ai chat panel to an existing app, while shadcn/ui suits developers building react or next.js interfaces who want full control over component code.

Are assistant-ui and shadcn/ui free?

assistant-ui: Free and open source. shadcn/ui: Free and open source.

Is assistant-ui or shadcn/ui more popular?

shadcn/ui has more GitHub stars (127k) than assistant-ui (12.9k). Popularity isn't the same as fit — check which one matches your use case above.

What are other alternatives to assistant-ui and shadcn/ui?

Other options people compare them with include CopilotKit, Radix Primitives, Base UI, Headless UI, Material UI.

Keep comparing

Built from our catalogue entries for both products: open-source details come from each project's README (AI-assisted, refreshed weekly) and GitHub data; AI-tool details are editorial. Spotted something wrong? Let us know from either product's page.