This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle
What I Built
Millions of fitness enthusiasts, runners, and lifters pay anywhere from $100 to $200 every month for personal training subscriptions and commercial coaching apps (Whoop, Future, MyFitnessPal, Fitbod). Yet these commercial services come with three major flaws:
- Perpetual Subscription Rent: Cancel your subscription, and you lose access to your personalized workout history and coaching insights.
- Biometric Privacy Leaks: Your most intimate biological markers—heart rate variability (HRV), resting heart rate, sleep architecture, weigh-in history, and photos of every meal you eat—are constantly uploaded and stored on corporate cloud servers.
- Cloud Latency & Network Dependency: The second you walk into an underground gym basement, run on a mountain trail, or lose cell reception, your AI coach goes dark with infinite loading spinners.
ZeroCoach is the world's first open-source, 100% on-device AI athletic coaching platform. Built with React Native, Expo, and llama.rn, ZeroCoach runs quantized Google Gemma 2 2B entirely on local device hardware.
It gives every athlete a world-class training companion with 0 cloud latency, 0 remote API inference fees, and 100% private biometric telemetry:
- 💬 Local Conversational Athletic Intelligence: Real-time coaching streaming at ~38 tokens/second locally on phone silicon, with dual coaching personas (Strict vs. Comfort).
- 🥗 Multimodal Nutrition & Food Decomposition: Instant photo plate decomposition with calorie and macro calculations, plus an expandable 9-micronutrient RDA bio-assay (Vitamins A, C, D, B12, Iron, Calcium, Magnesium, Potassium, Sodium). Also includes USDA Whole Foods database search and live barcode scanning.
- 🏋️ Adaptive Workout Engine: 643 science-backed exercises from RepDB with kinetic start/peak animations, personalized volume progression, dynamic movement swapping, and haptic rest countdowns.
- 📈 Unified 7-Day Athletic Telemetry: Direct local sync with Android Health Connect and Apple HealthKit, computing a holistic 0–100 daily composite performance score balancing CNS recovery (35%), workout volume (35%), and nutrition target accuracy (30%).
Demo
Watch the full 1080p high-production walkthrough demonstrating real on-device Gemma 2 generation, photo food decomposition, and live telemetry on a physical Android device:
- 🌐 Live Website: zerocoach.tech
- 📦 Download Standalone Android APK: ZeroCoach v1.1.0 Release
- 📺 Direct Video URL: https://youtu.be/Ns-7ikl16K0
Code
ZeroCoach is completely open source under the Apache License 2.0:
ntsd / zerocoach
An open-source, privacy-first AI health coach. Features offline mobile LLM inference, visual nutrition tracking, wearable sync, and adaptive lifestyle.
ZeroCoach
ZeroCoach is an open-source, privacy-first mobile fitness and athletic AI coaching application powered entirely by on-device and local AI models. Built with React Native and Expo, it delivers science-backed workout programming, adaptive nutrition targets, and real-time coaching—with zero cloud latency and absolute data privacy.
Visit the official website at zerocoach.tech.
📸 App Preview
| 📈 Performance & Trends | ⚙️ On-Device Engine |
|---|---|
![]() | ![]() |
| Multi-Domain Analytics 0–100 composite score & Health Connect | Hardware Acceleration Quantized GGUF execution & local endpoints |
✨ Key Features
- 📱 100% On-Device AI Inference: Runs quantized LLM models (e.g. Google Gemma 2) locally with hardware acceleration—zero cloud latency, zero API costs, and absolute data privacy.
- 🔌 OpenAI-Compatible Local Endpoints…
The repository includes:
- The full React Native / Expo mobile application source (
/src). - The Astro + Tailwind CSS marketing site (
/web) deployed on Render atzerocoach.tech. - The autonomous machine learning pipeline (
/ml) for LoRA fine-tuning, dataset generation, and vector embeddings. - Automated hardware test scripts using ADB and Argent (
/scripts/demo).
How I Built It
ZeroCoach is engineered around four sovereign on-device pillars:
1. On-Device Gemma 2 Inference via llama.rn
Rather than relying on expensive, proprietary cloud APIs (like OpenAI or Anthropic) that charge per token and leak user conversations, ZeroCoach embeds Google Gemma 2 2B Instruct quantized to Q4_K_M (~1.64 GB) running via llama.rn (React Native C++ bindings for llama.cpp).
- On modern mobile hardware (tested on Snapdragon silicon), Gemma 2 streams responses at ~38 tokens/second with 0ms cloud roundtrip latency.
- Dual persona coaching prompts are dynamically composed with live wearable biometrics and today's remaining macro budget before generation.
2. Autonomous Fine-Tuning & Vector Retrieval Pipeline (/ml)
ZeroCoach includes an offline ML pipeline:
- Synthetic Coaching Dataset: 1,075 verified biomechanical coaching pairs (
/ml/scripts/generate_dataset.py) formatted in native Gemma 2 chat tokens. - Dense Vector Search: Pre-computed 384-dimensional dense vectors (
sentence-transformers/all-MiniLM-L6-v2) across all 643 RepDB movements and USDA items, enabling instantaneous sub-millisecond semantic search and movement swapping offline. - LoRA Training: Parameter-efficient LoRA adapters trained with Apple Silicon MPS (Metal Performance Shaders) acceleration.
3. Multimodal Food Vision & Micronutrient Decomposition
In the Nutrition module, athletes can snap or upload any meal photo. ZeroCoach analyzes the dish, estimates ingredient weights (e.g. 187g Basque burnt cheesecake), decomposes calories and macronutrients (protein, carbs, fat, fiber), and generates a 9-essential micronutrient assay sheet before logging the portion directly to Lunch, Dinner, or Breakfast. For packaged goods, live barcode scanning and NutriSight label parsing provide instant verification.
4. Unified Health Hub & Telemetry Engine
Using local native bridges to Android Health Connect and Apple HealthKit, ZeroCoach reads resting heart rate, heart rate variability (HRV), and deep sleep architecture with zero third-party cloud aggregators. It translates these into an autoregulated daily readiness score (0–100) that automatically adjusts working set volume and deload suggestions.
Why Does Open Innovation Matter?
Open innovation is not just an ideological choice for ZeroCoach—it is the core technical architecture that makes the product commercially viable:
- $0 Marginal Inference Cost: Closed API services charge ongoing fees for every token sent and received. For an active athlete engaging with their coach multiple times a day, API costs quickly compound. Running open-weight Gemma 2 on device silicon reduces marginal inference cost to literally $0 forever, making a sustainable zero-subscription coaching tool possible.
- Absolute Health Data Sovereignty: Biometric telemetry is among the most sensitive personal data that exists. Asking users to upload their cardiac trends, sleep cycles, and daily food photos to closed corporate cloud silos is a major privacy barrier. Open-weight models running on-device guarantee that not a single byte of biometric data ever leaves the user's phone.
- Resilience in Real-World Athletic Environments: Athletes train in basement gyms, cross-country trails, remote tracks, and while traveling on airplanes. Closed APIs fail completely without internet access. Open-source local models allow athletes to train anywhere on Earth with 100% reliability.
- Freedom from Vendor Lock-In: Closed APIs can deprecate endpoints, change rate limits, or alter subscription pricing overnight. Open-weight models give developers and athletes permanent ownership over their tools.
My Agent Session
I developed and validated ZeroCoach collaboratively using an AI agent workflow that managed local model compilation, on-device ADB testing on a connected Xiaomi device, and automated video recording:
You can explore the full interactive transcript of this agent session at:
https://dev.to/agent_sessions/zerocoach-building-the-100-on-device-ai-athletic-coach-with-gemma-2-and-llamarn-t23on9
My First User
I tested ZeroCoach v1.1.0 directly on a physical Android phone (Xiaomi 25010PN30G) with Alex, an intermediate strength trainee aiming to hit personal records on bench press and squat without paying $150/month for commercial training apps.
User Walkthrough & Reaction:
- Meal Photo Snap: Alex uploaded a photo of dessert to the Nutrition tab. ZeroCoach identified the 187g cheesecake dish, computed 204 kcal with 18.5g protein, and logged it to Lunch with a single tap.
- Workout Routine: The adaptive workout engine assigned a Push Focus (Chest & Delts) split with progressive overload recommendations matching Alex's 79/100 morning recovery readiness score.
- Real-Time Coaching: Alex asked the on-device coach for form cues on barbell bench press; Gemma 2 streamed biomechanical cues locally in less than 2 seconds.
"Commercial fitness apps keep charging my credit card every month just to tell me how many pushups to do, and half the time they don't load in my basement gym. Having ZeroCoach run 100% on my phone with zero subscriptions and zero lag feels like the future of athletic coaching." — Alex
Prize Categories
🌟 Featured Category: Best Use of Gemma
ZeroCoach is built from the ground up around Google Gemma 2. We use gemma-2-2b-it-Q4_K_M.gguf running locally on mobile hardware via llama.rn. The model acts as the sovereign on-device coaching brain, analyzing real-time recovery telemetry, formulating nutrition suggestions, and adjusting workout splits at ~38 tokens/second with zero cloud latency.
🌐 Partner Category: Best Use of a .tech Domain
The official marketing website, interactive app showcase, feature documentation, and pre-computed ML model artifacts are live and hosted on our custom domain:
https://zerocoach.tech
Built with passion for Hacktoberfest 2026. Zero Subscriptions. Absolute Privacy. 100% On-Device AI.




