Image Lightbox

Image Lightbox

Image Lightbox

Image Lightbox

Image Lightbox

Zoom: 125%

Zoomable image

Offline Chatbot

Description

A desktop application that provides a clean interface for interacting with Ollama's AI models locally. Chat with AI models without needing internet connectivity after initial setup. Check out my blog post here for more information and a quick setup guide.

Features

  • Fully offline AI chat capabilities
  • Multiple AI model support through Ollama
    • Including DeepSeek-R1 and Llama3.3
  • Support for basic text files, CSVs, and JSON
  • Support for images compatible with select models
    • LLaVa and Llama 3.2 for example
  • Clean, modern interface with dark/light mode and real-time responses

Technologies Used

React and TypeScript are used for building the interface, and I use a NodeJS and Express backend to communicate between the frontend and backend. Ollama models are also required to commincate with the chatbot, which can be downloaded here.

Development Process & Motivation

I learned about Ollama and was amazed you could run AI models locally on your own hardware, before this I only knew of ChatGPT really. By running models locally you are able to interact with AI offline and without subscription costs. I also imagined a hypothetical scenario where you are stranded on an island, and an offline AI would be able to give you advice, and even analyze the surroundings with vision capabilities.

Challenges & Solutions

The biggest challenge for me was implementing the vision capabilities with models like LLaVa, since the image data needs to be base64-encoded.

Future Plans & Improvements

  • Text-to-speech and speech-to-text are some helpful additions I could make, however the best speech-to-text by Google relies on an internet access which I want to avoid to make this truly offline.
  • Multiple conversations with persistent data is another feature I'd like to add in the future.
  • I plan to continue developing this with an emphasis on offline use, privacy, and affordability.

Live Demo

Contact Me

Let’s make your idea a reality

Thank you for taking the time to visit my website! If you're looking for a skilled and innovative developer to work with, don't hesitate to reach out. Whether you have a job opportunity or a freelance project in mind, let's connect and see how we can work together.

You can send me a message below or email me at stevenmendoza.dev@gmail.com