<a href="https://www.assistant-ui.com">
  <img src="https://raw.githubusercontent.com/assistant-ui/assistant-ui/main/.github/assets/header.svg" alt="assistant-ui Header" width="100%" style="width: 1000px" />
</a>

<p align="center">
  <a href="https://www.assistant-ui.com">Product</a> ·
  <a href="https://www.assistant-ui.com/docs/getting-started">Documentation</a> ·
  <a href="https://www.assistant-ui.com/examples">Examples</a> ·
  <a href="https://discord.gg/S9dwgCNEFs">Discord Community</a> ·
  <a href="https://cal.com/simon-farshid/assistant-ui">Contact Sales</a>
</p>

[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/assistant-ui/assistant-ui)
[![Weave Badge](https://img.shields.io/endpoint?url=https%3A%2F%2Fapp.workweave.ai%2Fapi%2Frepository%2Fbadge%2Forg_GhSIrtWo37b5B3Mv0At3wQ1Q%2F722184017&cacheSeconds=3600)](https://app.workweave.ai/reports/repository/org_GhSIrtWo37b5B3Mv0At3wQ1Q/722184017)
![Backed by Y Combinator](https://img.shields.io/badge/Backed_by-Y_Combinator-orange)

- [⭐️ Star us on GitHub](https://github.com/assistant-ui/assistant-ui)

## The UX of ChatGPT in your React app 💬🚀

**assistant-ui** is an open source TypeScript/React library for AI chat.

The library handles essential chat features such as auto-scrolling, accessibility, and real-time updates, while providing easy integration with LangGraph, AI SDK, and custom backends.

The API of assistant-ui is inspired by libraries like shadcn/ui and cmdk. Instead of a single monolithic chat component, developers get primitive components that can be fully customized.

We have wide model provider support (OpenAI, Anthropic, Mistral, Perplexity, AWS Bedrock, Azure, Google Gemini, Hugging Face, Fireworks, Cohere, Replicate, Ollama) out of the box and the ability to integrate custom APIs.

## Getting Started

You can get started by running `npx assistant-ui create` (new project) or `npx assistant-ui init` (existing project) in your terminal.

[![assistant-ui starter template](https://raw.githubusercontent.com/assistant-ui/assistant-ui/main/.github/assets/assistant-ui-starter.gif)](https://youtu.be/k6Dc8URmLjk)

## Features

- shadcn/ui
  - Radix UI-inspired primitives for AI Chat
  - Beautiful shadcn/ui theme to get you started
- Chat UI
  - Streaming, Auto-scrolling, Markdown, Code Highlighting, File Attachments, and more
- Keyboard shortcuts and accessibility features
- Generative UI
  - Map LLM tool calls and JSONs to custom UI components
- Frontend tool calls
  - Let LLMs take action in your frontend application
- Human tool calls
  - Human approvals and input collection
- Chat history and analytics
  - Sign up for assistant-cloud and configure by simply setting an environment variable

## Choose your backend

- AI SDK
  - First class integration into AI SDK by Vercel. Connect to any LLM provider supported by AI SDK.
- LangGraph
  - First class integration into LangGraph and LangGraph Cloud. Connect to any LLM provider supported by LangChain.
- Custom
  - Use assistant-ui as the visualization layer on top your own backend/streaming protocols.

## Customization

The API of assistant-ui is inspired by libraries like Radix UI and cmdk. Instead of a single monolithic chat component, we give you composable primitives and a great starter configuration. You have full control over the look and feel of every pixel while leaving auto-scrolling, LLM streaming and accessibility to us.

![Overview of components](https://raw.githubusercontent.com/assistant-ui/assistant-ui/main/.github/assets/components.png)

Sample customization to make a perplexity lookalike:

![Perplexity clone created with assistant-ui](https://raw.githubusercontent.com/assistant-ui/assistant-ui/main/.github/assets/perplexity.gif)

## **Demo Video**

[![Short Demo](https://img.youtube.com/vi/ZW56UHlqTCQ/hqdefault.jpg)](https://youtu.be/ZW56UHlqTCQ)

[![Long Demo](https://img.youtube.com/vi/9eLKs9AM4tU/hqdefault.jpg)](https://youtu.be/9eLKs9AM4tU)

## Traction

Hundreds of projects use assistant-ui to build in-app AI assistants, including companies like LangChain, AthenaIntelligence, Browser Use, and more.

With >100k monthly downloads, assistant-ui is the most popular UI library for building AI chat.

<img src="https://raw.githubusercontent.com/assistant-ui/assistant-ui/main/.github/assets/growth.png" alt="Growth" style="max-width: 400px;">

## 2025 Q1 Roadmap

- [x] Assistant Cloud
- [x] Chat Persistence
- [x] React 19, Tailwind v4, NextJS 19 support
- [x] Improved Markdown rendering performance
- [x] LangGraph `interrupt()` support
- [x] Open in v0 support
- [ ] Improved documentation (work in progress)
- [ ] OpenAI Realtime Voice (work in progress)
- [ ] Resume interrupted LLM calls (work in progress)
- [ ] Native PDF attachment support
- [ ] Follow-up suggestions

## Next Steps

- [Check out example demos](https://www.assistant-ui.com/)
- [Read our docs](https://www.assistant-ui.com/docs/)
- [Join our Discord](https://discord.com/invite/S9dwgCNEFs)
- [Book a sales call](https://cal.com/simon-farshid/assistant-ui)
