OpenSourcePicks

Open source alternatives to popular software, with live GitHub data

GitHub stats refreshed every day

PocketPal AI

iOS and Android app that downloads language models and runs them offline on the phone

Open source alternative to

Visit PocketPal AIGitHub

Main features

  • Runs GGUF models such as Gemma, Qwen, Phi and Llama offline on iOS and Android
  • Searches and downloads models from Hugging Face, including gated ones
  • Image input with vision models
  • Connects to remote llama.cpp, LM Studio, Ollama, vLLM or OpenAI servers
  • On-device text-to-speech and Whisper voice input
  • Pals with their own model, system prompt and personality
  • Tool calling for calculations, web search, page reading and HTML rendering
  • Benchmarks with optional submission to a public phone leaderboard
  • CPU, GPU and Qualcomm NPU acceleration

What PocketPal AI does

PocketPal AI puts a local language model on your phone. You pick a model from its list or search Hugging Face, download it once and chat with it with no connection and no account. Around the chat it adds “Pals” (personas with their own model and system prompt), vision models that accept photos, spoken replies and voice input, and “Talents”, tools the model can call, such as a calculator, web search and a page reader. A benchmark screen measures tokens per second and memory use on your device.

Models and providers

On the phone, PocketPal runs models in the GGUF format through llama.cpp, using the llama.rn bridge. The README lists three hardware paths: CPU everywhere, GPU (Metal on iOS, OpenCL on Qualcomm Adreno chips on Android) and the Qualcomm Hexagon NPU, which the website marks as experimental. When a backend is unavailable, the app falls back or offloads only part of the model. Speech runs locally through ONNX Runtime with the Kokoro, Kitten and Supertonic voice engines, and voice input uses an on-device Whisper model.

For larger models you can add a remote server: the app knows llama.cpp’s server, LM Studio, Ollama, vLLM and OpenAI, and accepts other OpenAI-compatible endpoints with an optional API key. That makes it a mobile front end for a model server you run at home.

Privacy and data

Chats are stored on the phone in a local database, with secrets in the system keychain. The README says the only data that leaves the device is benchmark results you choose to submit and feedback you send. The app uses Firebase App Check to protect those calls, and the dependency list contains no analytics SDK. Remote servers and web search are opt-in, and the app warns about each one: messages sent to a remote server leave the phone, and web search queries go to the provider you pick (Tavily, Brave, Exa, Firecrawl or You.com, mostly with your own key).

Running PocketPal AI

Install it from the App Store or Google Play. Which models are practical depends on your phone’s memory and storage; the README advises choosing a quantization that fits both. To build it yourself you need a standard React Native setup: Node 22, Yarn 1, Xcode with the Metal toolchain for iOS and Android Studio for Android. Core chat works in a self-built copy without any backend keys.

Hosted version

There is no hosted chat service. The developers run pocketpal.dev, with the phone leaderboard and model evaluations, and PalsHub, a catalog of community personas.

Limitations

A model that fits in a phone’s memory is far smaller than the models behind hosted assistants, so expect weaker answers on complex tasks and slower replies on older devices. There is no document chat or knowledge base: attachments are images for vision models. PocketPal Plus, a one-time pay-what-you-want purchase, unlocks hands-free voice mode in the store builds; the project says chatting itself stays free. There is no desktop version.

Who it suits

PocketPal suits people who want a private assistant that works on a plane or without signal, and owners of a home model server who want a phone client for it. For running local models on a computer, see Jan or Ollama.

License details

MIT. Optional PocketPal Plus in-app purchase unlocks hands-free voice mode in the store builds; premium Pals on PalsHub are sold in-app. The code for both is in the MIT repository.

Technical details

Built with

  • TypeScript
  • React Native
  • llama.cpp

Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.