webllama is a self-hosted web interface for local AI.
Written in Vue.js.
Runs in your browser.
~1.5 MB production build.
Free and open source.
- Overview
- Features
⚠️ Before You Start- Installation
- Roadmap
- Contributing
- Is it vibecoded?
- Feedback
- License
webllama is built with Vite + Vue 3. It runs right in your browser and doesn't require any advanced skills or knowledge to get started. webllama can automatically detect and connect to Ollama right out of the box.
Your chats are stored directly in your browser using IndexedDB, allowing webllama to persist your conversation history locally without relying on a backend. User settings are stored in LocalStorage for quick and persistent access.
Features marked with an asterisk (*) in the image will be implemented soon
- Simple setup: Just clone the repository and run the app right in your browser. Click here to skip to the installation.
- Automatic models detection: The app automatically finds and uses models already installed with your local Ollama instance. If you haven't installed Ollama yet, follow these steps.
- Works offline - Run and interact with downloaded models through Ollama without an Internet connection.
- Private - Your conversations stay on your device. We don't collect information about your device, conversations, or how you use the app. The only external request made by webllama is to this GitHub repository for checking app updates.
- Chat history storage - All your conversations are stored directly in your browser (IndexedDB).
- “Incognito Mode” - This allows you to have temporary chats without saving them to your history.
- “Thinking Mode” - Enable thinking for models that support it. Thinking may improve reasoning on complex tasks but can increase response time.
- Rich output format - Supports Markdown, syntax-highlighted code blocks, and LaTeX formulas.
- Ollama instance - Check Ollama status, control installed and active models, change the default API URL.
- System prompt - Use system prompt to define role, behavior, tone, constraints, and output format of your model.
webllama requires Ollama to be installed and running on your computer.
If you already have Ollama installed, you can skip this section and proceed to installation.
If you don't have Ollama yet:
- Download and install Ollama from the official website.
- Pull a model:
# For example:
ollama pull gemma4:e2bThis downloads Google's Gemma 4 E2B model. You can instead pull any model supported by Ollama, including Qwen, Llama, Mistral, DeepSeek, and many others.
See the full list of available models on the Ollama library.
- Git
- Node.js
- pnpm
- Clone the repository
git clone https://github.com/kirillmelcin96/webllama.git- Install dependencies using
pnpm
pnpm install- Run the development server
pnpm dev- Open http://localhost:5173/ using your browser and start your first chat!
The project is actively developed. You can track planned features and progress on the public roadmap.
Some of the major planned features:
- Ollama and Hugging Face models downloader
- Folders (Projects)
- Image generation support
- Multimodal (vision) models support
- Export/Import chat history
- Search in chats
- Onboarding view for new users
- Plugins?
If you'd like to help implement a feature, feel free to do it! You can find currently planned and requested features in the issues. I would really appreciate any help.
I strongly encourage contributors to minimize the use of AI-generated code. Commits containing ONLY AI-generated code will not be accepted. If you’ve used AI to write any code snippets or functions, please mark them with a special comment.
If you have an idea for a feature, please create a new issue by clicking the “New Issue” button > ✨ Feature request.
If you want to report a bug, please create a new issue by clicking the “New Issue” button > 🐛 Bug report.
No, it's not. The vast majority of the code in this repository was written by a human. No AI coding agent was used to build the project.
However, a few small, non-critical functions were AI-assisted at this time. For development transparency, all of these functions are marked with the AI-ASSISTED comment in the code in the following format:
// AI-ASSISTED (<Name of LM>): <what it helped with>Contributors are also asked to mark AI-assisted code in this format.
All images are human-made in Figma.
Have a question/suggestion? Feel free to contact me:
If you find webllama useful and would like to support its development, you can send a donation ❤️
BTC: bc1qmh3qkvsdze7rrdz3mk6nfrulsr9x8gr3mexgnk
ETH: 0x184a418975587bFc926961A71C0529919a3aeD7B
USDT (TRC20): TR6uA8V8GKFfY4FZMJJ6tNy18drb2LK6wZ
GRAM (ex TON): UQAlDlzMb59T80REEF_v_lYPkGdXnsU6bFbjFOhgTgySS623
webllama is a free app. Donations are completely optional and are not required to use webllama.
webllama is licensed under the Apache License 2.0
Copyright 2026 Kirill Melcin
webllama additionally contains code/libraries with the following licenses: MIT, ISC, 0BSD, CC0-1.0, Apache License 2.0, BSD-2-Clause, BSD 3-Clause.
To see the complete list of dependencies, their licenses, and copyrights, please refer to the THIRD-PARTY-NOTICES.txt file.
This file was automatically generated using the @quantco/pnpm-licenses utility. Generation is triggered by the following command:
pnpm notices

0 comments
log in to comment.