Ollama Web UI v0.5.0
First tagged release of Ollama Web UI — a clean, modern web interface for chatting with your local Ollama models, privately.
✨ Highlights
🧠 Reasoning model support
- Displays the thinking/reasoning process of reasoning models (e.g. DeepSeek R1) in a collapsible block above each answer, collapsed by default.
- Supports both reasoning sources: Ollama's separate
message.thinkingfield (sent withthink: true) and inline<think>...</think>tags in the response content, with parsing that handles tags split across streaming chunks. - Thinking toggle next to the message input to show or hide reasoning. The choice is persisted. When off, reasoning is dropped from the display (both the
thinkingfield and any inline tags are stripped), so you only see the answer.
🌐 Internet-deployment guidance (CORS)
- Since the browser talks to Ollama directly, hosting the app on a public domain requires Ollama to allow cross-origin requests.
- Added clear, actionable hints in two places:
- Settings panel — a persistent note under the Ollama Server URL field with the exact env vars (
OLLAMA_HOST=0.0.0.0,OLLAMA_ORIGINS=*) and a mixed-content (HTTPS → HTTP) warning. - Model selector — when the connection fails, an inline hint pointing users to the fix, linking the official Ollama FAQ.
- Settings panel — a persistent note under the Ollama Server URL field with the exact env vars (
💅 UI polish
- Added a tagline next to the app title: "Chat with your local models, privately." (hidden on small screens).
- Refreshed favicon, added an Ollama logo asset, and updated the screenshot.
🛠️ Under the hood
- Streaming now separates reasoning from answer content and persists both to conversation history (new optional
reasoningfield onMessage). - Reasoning is stripped from messages sent back to the model, so it isn't fed into context.
- Streaming preview is scoped to its originating conversation — opening a New Chat mid-stream no longer leaks the in-progress reasoning/answer into the new conversation.
📦 Stack
Next.js 16 · React 19 · TypeScript · Tailwind CSS · DaisyUI · Zustand (persisted) · react-markdown
🚀 Getting started
See the README for Docker and development setup. In short:
bun install
bun run devThen open http://localhost:3000 and make sure Ollama is running (default http://127.0.0.1:11434).