A small, fully-customizable UI for chatting with your local Ollama models. Plain HTML/JS frontend + a thin FastAPI proxy. No build step, no cloud.
./run.sh
# then open http://localhost:8010(First run creates a venv and installs FastAPI/uvicorn/httpx. Needs Ollama
running on localhost:11434.)
- System prompt + params — system prompt, temperature, top-p, max tokens, editable live per chat (⚙ Settings).
- Personas / presets — name a bundle of model + prompt + params, switch with
one click. Stored in
data/presets.json(survives restarts; edit by hand too). - Theme — 4 base themes (Midnight / Paper / Terminal / Sunset) plus a color picker for every token, font size, and corner roundness. Saved in the browser.
- Multi-model compare —
⊞ Comparesends one prompt to several models at once, side by side.
backend/app.py FastAPI: /api/models, /api/chat (streaming), /api/presets
frontend/index.html the whole UI (theme tokens live in :root CSS vars)
data/presets.json saved personas
- Colors/spacing: all visual values are CSS variables in
:rootat the top offrontend/index.html— change defaults there, or add a theme to theTHEMESobject in the script. - New backend / model source: point
OLLAMAinbackend/app.pyelsewhere, or swap the/api/chatbody to an OpenAI-compatible endpoint. - Default port: edit
run.sh(--port 8010).