← back

Enchanted

Dec 2023

Native iOS and macOS client for the early days of open-source LLMs running through Ollama

https://github.com/gluonfield/enchanted

Enchanted on macOS chatting with a locally hosted dolphin-mistral model
Enchanted on macOS talking to a locally hosted dolphin-mistral via Ollama. Same UI on iOS, iPadOS, and visionOS.

Motivation

When Llama 2 dropped in mid-2023, running a capable LLM on your own machine suddenly worked. Ollama made the server side trivial. The client side did not exist - the only way to talk to a local model was a terminal, a Python notebook, or a half-broken WebUI.

Enchanted is the native Apple client I wanted: a polished, ChatGPT-style app for macOS, iOS, and visionOS that points at any Ollama-compatible endpoint - localhost, a VPN'd box at home, or a private cloud server. Same conversation history across devices, same model picker, no telemetry, all data stays on the device.

Features

  • Native SwiftUI on macOS, iOS, iPadOS, and visionOS - one codebase
  • Conversation history stored locally, included in API calls for context
  • Markdown rendering with tables, lists, and syntax-highlighted code blocks
  • Multimodal prompts with image attachments
  • Voice input and text-to-speech read-aloud
  • System prompt and per-conversation model override
  • Custom prompt templates ("Completions") usable from anywhere via the macOS Spotlight-style panel (⌃⌘K)
  • Works fully offline against a local Ollama instance
  • Shipped through the App Store

Stack

Swift, SwiftUI, SwiftData for persistence, and a small networking layer that speaks the Ollama HTTP API. No backend of our own - the user's Ollama server is the backend. The same binary targets iOS, macOS, and visionOS with platform-conditional UI where it matters.

← back