Buyer's guide ยท Pocketmind
On-device AI chat app source code in Flutter, private and offline
Pocketmind is complete Flutter source code for a private AI chat app for Android and iOS. A small open-weight model is downloaded once and then runs on the phone: no AI server, no API key and no account, and it works offline. Users can ask about PDFs and photos, dictate and hear replies read aloud, and lock the app with Face ID or a fingerprint.
What you get
The full source code
The Flutter app for Android and iOS, the native bridge with llama.cpp and whisper.cpp as source, the optional operator console (Node.js 22) and the documentation.
Chat on the phone
Streaming replies from a model that runs in a background isolate through a native bridge. When a chat gets long, the context window keeps the system prompt and the last question.
Ask about PDFs and photos
PDF text is extracted on the phone, split into passages and searched with BM25 before the model answers. Photos go to a small vision model (SmolVLM 500M) on the phone.
Voice
Hold-to-talk dictation with on-device speech recognition, and replies read aloud with the system voice.
Model manager
Downloads resume, every file is checked with sha256 and as GGUF, and storage space and memory are checked first. Users switch and delete models.
Privacy built in
One network client with an allowlist, a Privacy screen built from the live configuration that lists what leaves the phone, and a Face ID or fingerprint app lock.
How you publish it as your own app
Pocketmind is an app you rebrand and publish under your own developer accounts. There is no AI bill: the models run on your users' phones.
Configuration, not code
Every feature can be set to Everyone, Pro or Off from configuration, with no code change.
Optional console
The operator console serves the app's configuration: model catalog, features, assistant styles, texts, brand, ads, paywall, status checks, an audit log and a team. The app also works without it, on its built-in configuration.
Optional Pro
Monthly, yearly and lifetime Pro through Google Play and App Store purchases, off by default, with your own product ids.
Optional ads
AdMob banner and interstitial ads, off by default. No ad id ships, and release builds never show test ads.
Your own models
The catalog is one JSON line per model (GGUF from Hugging Face, sha256, size, licence, memory). The five default models are Apache-2.0 or MIT; add only models whose licence allows commercial use.
What it needs to run
These are not included in the price and are paid by you, on your own accounts.
- Flutter 3.41 or newer with Dart 3.11 or newer
- For iOS: a Mac with Xcode 16 or newer, CocoaPods and CMake; minimum iOS 16.0
- For Android: Android SDK 36, NDK 28.2.13676358 and CMake 3.22.1; minimum Android 8.0 (API 26)
- Phones with 64-bit ARM and 4 GB RAM or more (6 GB for the 1.7B models)
- Google Play and Apple developer accounts to publish
- Optional: a Node.js 22 host for the console, and an AdMob account if you switch ads on
What it does not do
- AI model files are not part of the download. The app downloads them from Hugging Face, a third-party service, and each model keeps its own licence.
- The first launch needs one download (Qwen3 0.6B is about 410 MB); after that the chat works offline.
- Small on-device models make mistakes and know less than large cloud models. The app shows an AI notice under the message box.
- PDFs need a text layer: scanned pages with no text are refused, and long PDFs are read from their first pages.
- It was tested on the iOS simulator and the Android emulator. Reply speed depends on the phone, so no speed is claimed.
- The live preview shows the real app screens in a browser, but the AI runs only on a phone, so the preview does not chat.
Questions
Is there an AI bill or an API key?
No. The model runs on the user's phone. There is no AI server and no API key anywhere in the code.
Does it work offline?
Yes, after the one-time model download. The app's own network client reaches only the model hosts and your optional console. If you switch on ads or Pro, the Google and Apple SDKs connect to their own services.
Do I need the operator console?
No. The app ships with a built-in configuration. The console lets you change models, features, texts, ads and the paywall without an app update.
Which phones does it run on?
Android 8.0 or newer and iOS 16 or newer, 64-bit ARM, with 4 GB RAM. The 1.7B models need 6 GB.
Which ad and store ids are in the source?
None of ours. The ad unit ids and the store product ids are empty until you enter your own, and the AdMob app id in the Android and iOS files is Google's public test id.
How much does Pocketmind cost, and what does the licence allow?
$35, one payment, no subscription. One licence, no tiers: any number of projects and clients, a paid SaaS, every line changed. The only limit is reselling or publishing the source code itself. The services you connect bill you directly. See the licence.
Is setup included?
Yes. We install Pocketmind for you and put in your logo, colours and texts. Bigger changes or new features get a fixed price before we start.
What if it does not work?
Write to us within 14 days. We fix it, usually the same day. If we cannot fix it within 7 days, you get your money back. See the refund policy.