Chiranjib

I built MyLLM – a free, 100% offline AI app for iOS & Android

by

Hey Product Hunt! 👋

I'm a solo developer and I just shipped something I've been obsessing over for the past few months — and I'd love to get your honest feedback.

The Problem

We were promised "personal AI," but what we got are cloud-dependent tools that send every conversation to a remote server. No internet? Useless. Privacy concern? Too bad. Monthly fee? Always.

That's not personal AI. That's a digital leash.

What I Built: MyLLM AI

MyLLM AI is a native iOS & Android app that runs Large Language Models (LLMs) — the same technology powering ChatGPT — completely on your device. No internet required, ever.

✅ 100% Offline (works in Airplane Mode)

✅ No API keys or cloud accounts

✅ No monthly subscription — free forever

✅ ~31MB APK — surprisingly small

✅ Your conversations never leave your phone (stored in local Room DB)

The Tech Stack

Built with Kotlin + Jetpack Compose using MVVM Clean Architecture. The core is a ~400-line C++ JNI bridge that streams tokens directly from raw GGUF models in real-time, handling sampling and full UTF-8 support (yes, emojis too) with atomic thread safety. This JNI bridge was genuinely the hardest engineering challenge I've tackled.

Models Supported

The app auto-detects your CPU/RAM and recommends the best fit. Supported GGUF models with Q4_K_M quantization include:

  • Qwen 3.5 (0.8B up to 9B)

  • - Llama 3.2 (1B, 3B)

  • - Qwen 2.5 Coder (great for writing code locally)

  • - Dolphin (uncensored variant)

One-tap downloads from HuggingFace with background management and RAM warnings before large downloads.

The Chat Experience

  • Real-time token streaming (words appear one-by-one as the model generates)

  • - Conversation history saved locally

  • - Image input support (multimodal)

  • - Local Speech-to-Text (STT) and Text-to-Speech (TTS) for fully hands-free use

  • - 20+ built-in AI prompt templates (resume writing, coding, brainstorming, etc.)

  • - Full inference controls: Temperature, Max Tokens, Top-K/Top-P

The Wild Part: Phone Automation Agent

I added an experimental Accessibility Service agent that lets the offline LLM control your phone. It can read your screen's UI hierarchy, tap buttons, swipe, type, and navigate — no cloud required.

"Open Settings and turn on Dark Mode" — done locally.

"Send a WhatsApp message to Mom" — handled on-device.

The Soul: Pokéball Theme 🔴

I refuse to ship ugly software. The entire app runs on a Material Design 3 Pokéball aesthetic, complete with an animated Neural Brain visualization on empty screens. It's fun and fast.

What's Coming Next

  • RAG (Retrieval-Augmented Generation) for document Q&A

  • - Improved Agent logic and reliability

  • - Custom model import support

I'm building fully in public. If you want to test the APK or have questions about the C++ NDK/JNI implementation, drop a comment — happy to go deep on the technical side.

Would love your feedback, upvotes if you find this useful, and any suggestions from the builder community here. 🙏

What do you think — is offline-first AI something you'd actually use day-to-day?

19 views

Add a comment

Replies

Best
Rian Robertson

Hey! This is seriously impressive...solo dev shipping a fully offline LLM app with phone automation? The Pokéball theme and that C++/JNI bridge sound like pure engineering joy. As someone who's wrestled with native bridges myself, mad respect.

Offline-first AI is 100% something I'd use daily...privacy without compromise is huge.

If you're up for it, I'm launching The Sponge (AI flashcard app for turning web into spaced-rep study cards) on PH soon...would appreciate a follow (link in profile). Keep building! 🚀