Simple Expo Android app for logging calories, visualizing weekly trends, and adjusting the daily target from body weight.
- 🤖 On-device meal estimation with local AI model inference
- 🍽️ Meals, weights, and body-fat logs stored locally in SQLite
- ⚙️ Settings and lightweight preferences stored on-device with MMKV
- 🎯 Daily calorie target from either a fallback goal or latest weight x calories-per-kg multiplier
- 💪 Health Connect weight sync on Android
- 📊 Weekly calorie bar chart
- 📈 Weight trend line chart
- 📦 AI models are downloaded to the device and run locally using LiteRT-LM: https://github.com/google-ai-edge/LiteRT-LM
- 🔒 No cloud inference is done for model execution after download
- 🛠️ The Settings screen includes controls to download models and run local inference
estimate_meal.mp4
Download the latest APK from the Releases page and sideload it on your Android device. Requires Android 8+ (API 26).
Note: This app uses
react-native-health-connectand requires a development build. It does not run inside Expo Go.
- Install dependencies:
npm install- Generate the native Android project:
npm run prebuild- Build and launch the Android app:
npm run android- Start Metro for the development build:
npm run start- The app requests read access for weight records.
minSdkVersionis set to 26 because Health Connect requires Android 8+
- LiteRT-LM: https://github.com/google-ai-edge/LiteRT-LM
- react-native-litert-lm: https://github.com/hung-yueh/react-native-litert-lm
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.
