
Chatbot UI
Self-hosted open-source web chat app for talking to AI models, backed by Supabase.
- Stars
- 33.3k
- Forks
- 9.4k
- Licence
- MIT
- Language
- TypeScript
- Last update
- 2.3 years ago
- Type
- App
No commits in over a year — check for forks or alternatives before adopting.
What it is
Chatbot UI is a web app that gives you a chat interface for AI models, which you can run on your own machine or server. It stores chats and settings in a Supabase (Postgres) database, and the README says it can also connect to local Ollama models. A hosted version is available from the maintainer if you don't want to run it yourself.
- Chat with OpenAI or Azure OpenAI models through a self-hosted interface, using your own API keys
- Run a local instance for private chats stored in your own Supabase database
- Deploy a hosted instance to Vercel with a Supabase backend
- Use Ollama-hosted local models by setting the Ollama URL
Great for
- Developers who want a self-hosted chat interface for OpenAI or Azure OpenAI models
- People comfortable running Docker and a Node.js project locally
- Anyone who wants to try local models through Ollama alongside hosted ones
- Teams who want to customize an open-source chat front end
Not ideal for
- Non-technical users who want a simple install: setup requires Docker, Supabase CLI, and editing SQL migration files
- People needing a polished mobile experience, since the README says improved mobile layouts are still planned
- People who want the 2.0 code's latest deployment simplification: the README says simpler deployment is still on the way
How to get it
- 1
Clone and build from source
You'll need: Node.js (README says use v18) · Docker · Supabase CLI
Clone the repo
git clone https://github.com/mckaywrigley/chatbot-ui.gitInstall dependencies
npm installStart Supabase locally
supabase startRun the app locally
npm run chat - 2
Run it
- Clone the repository and run npm install in its root folder
- Install Docker and the Supabase CLI, then run supabase start
- Copy .env.local.example to .env.local and fill in values from supabase status
- Replace the project_url and service_role_key values in the first SQL migration file as the README describes
- Run npm run chat and open http://localhost:3000
- 3
Get the most out of it
- Add API keys such as OPENAI_API_KEY as environment variables to enable models without typing them in the UI
- Set NEXT_PUBLIC_OLLAMA_URL if you use local Ollama models (default http://localhost:11434)
- For a hosted setup, follow the README's Vercel steps and set the Framework Preset to Next.js
- Use npm run update to pull the latest code, and npm run db-push on hosted instances to apply migrations
Downloads
Strengths
- Open source under the MIT license, so you can read and modify the code
- Stores data in Supabase (Postgres) instead of only in browser storage, as the README explains
- Has an official hosted version for people who don't want to self-host
Trade-offs
- Setup has many steps, including Docker, the Supabase CLI, and manual SQL edits, and the README says deployment is still being simplified
- The README states that the project's maintainer is working on a big update and that the 1.0 code lives on a legacy branch
- Issues about setup are redirected to Discussions, and the README says the contributing guide is still in progress
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| chatbot-ui (this) | 33.3k | App | intermediate | 2.3 years ago | Developers who want a self-hosted chat interface for OpenAI or Azure OpenAI models |
| LibreChat | 46.6k | App | intermediate | 4 days ago | Teams that want one shared chat interface across several AI providers |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.