explaingit

mckaywrigley/chatbot-ui

Analysis updated 2026-06-20

33,206TypeScriptAudience · vibe coderComplexity · 3/5Setup · moderate

TLDR

A self-hosted, open-source chat interface that lets you talk to any AI model, OpenAI, Azure, or locally running models, while keeping your conversations in your own database.

Mindmap

mindmap
  root((chatbot-ui))
    What it does
      Multi-model chat
      Self-hosted data
      Conversation history
    AI Providers
      OpenAI GPT
      Azure OpenAI
      Local via Ollama
    Tech Stack
      Next.js frontend
      Supabase database
      Vercel hosting
    Use Cases
      Private team chat
      Offline AI chat
      Custom AI assistant
    Setup
      Docker local dev
      API key required
      Vercel deploy
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a private ChatGPT-style chat app for your team using your own API keys

USE CASE 2

Self-host a multi-model AI chat interface so your conversation data stays on your own servers

USE CASE 3

Connect to locally running AI models via Ollama for fully offline AI chat

USE CASE 4

Deploy a branded AI assistant with your own database and authentication

What is it built with?

TypeScriptReactNext.jsSupabasePostgreSQLDockerVercel

How does it compare?

mckaywrigley/chatbot-uibackstage/backstageimmutable-js/immutable-js
Stars33,20633,28533,061
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatehardeasy
Complexity3/54/52/5
Audiencevibe coderops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires a Supabase project (or local Docker setup) plus at least one AI provider API key before the app will work.

In plain English

Chatbot UI is an open-source web interface for chatting with AI language models. It solves the problem of vendor lock-in and privacy: instead of being tied to a single provider's chat interface, you can run this app yourself and connect it to any AI model you choose, including OpenAI's GPT models, Azure OpenAI, or locally running models via Ollama (a tool for running AI models on your own computer). The interface looks and works much like popular AI chat apps: you have conversations, can manage multiple chat threads, and can switch between models. Because you self-host it, your conversations stay in your own database rather than a third-party service's servers. The way it works is that you deploy the frontend (a Next.js web app) and connect it to Supabase, which is an open-source Postgres database service, for storing conversations and user accounts. You provide your own API keys for whichever AI models you want to use. The application routes your messages to the appropriate AI provider and displays the responses in the chat interface. You would use Chatbot UI when you want a polished, multi-model chat interface but want control over your data, want to use locally running models, or want to avoid paying for a hosted AI app subscription when you already have API access. It is also useful for building a private ChatGPT-style app for a team. The tech stack is TypeScript and React on the frontend using Next.js, Supabase (Postgres) as the database and authentication backend, and it can be deployed to Vercel for hosting. Local development requires Docker to run Supabase locally. An official hosted version is available at chatbotui.com for users who don't want to self-host.

Copy-paste prompts

Prompt 1
Set up chatbot-ui with Supabase so I can chat with GPT-4 using my own OpenAI API key, walk me through deploying it on Vercel
Prompt 2
How do I add a new AI provider to chatbot-ui so I can use Anthropic Claude alongside OpenAI?
Prompt 3
Help me configure chatbot-ui to use a locally running Ollama model instead of a cloud API
Prompt 4
I want to fork chatbot-ui and add a feature that saves chat summaries automatically, where should I start in the codebase?
Prompt 5
How do I run chatbot-ui locally with Docker and Supabase for development?

Frequently asked questions

What is chatbot-ui?

A self-hosted, open-source chat interface that lets you talk to any AI model, OpenAI, Azure, or locally running models, while keeping your conversations in your own database.

What language is chatbot-ui written in?

Mainly TypeScript. The stack also includes TypeScript, React, Next.js.

How hard is chatbot-ui to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is chatbot-ui for?

Mainly vibe coder.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub mckaywrigley on gitmyhub

Verify against the repo before relying on details.