Ollama Multi-AI Chatbot

Desktop + Web chatbot with model switching.

  • Next.js 14
  • Electron
  • React 18
  • Ollama
  • Qwen3
  • Qwen2.5 Coder
  • Qwen2.5 Vision
  • Gemma3

Core Features

  • Model dropdown: switch between Qwen3, Qwen2.5-Coder, Qwen2.5-VL, Gemma3.
  • Streaming responses for real-time typing effect.
  • Vision input with Base64 conversion + preview/remove.
  • Fixed bottom input; auto-scroll to latest message.
  • Same codebase for Web + Electron desktop.

Architecture

  • Next.js App Router frontend with modular components (Header, Messages, InputBar).
  • API Routes: /api/chat (text), /api/chat-vision (multimodal).
  • Local inference via Ollama; fetch streams decoded with TextDecoder.
  • Electron wrapper for offline desktop experience.

Technologies

  • ReadableStream + TextDecoder for incremental rendering.
  • SCSS modules for isolated, performant styles.
  • TypeScript interfaces for message and project models.
  • Progressive enhancement for images and video poster.

Key Highlights

  • Runs fully local (privacy).
  • Unified UX across platforms.
  • Vision + text + code in one UI.
  • Production-minded structure and styling.