"NutriTrace: Self-hosted nutrition + wearables + optional AI, single Docker container, AGPL
# NutriTrace: self-hosted nutrition tracker with wearables, multi-user, and optional AI
[NutriTrace](https://github.com/TraceApps/nutritrace) is a self-hosted alternative to MyFitnessPal / Cronometer / Lose It that I've been building over the last couple of years. Currently at v1.0.2, AGPL-3.0, single Docker container, native Android app included.
## What it actually does
**Daily nutrition tracking.** Log meals from a searchable food catalog (local + Open Food Facts + USDA), scan barcodes, save your own foods + meals + recipes. Macros + micros + water + goal tracking. The Diary page is the daily view; the Statistics page charts trends over any range.
**Wearable integration.** Fitbit, Garmin, Withings, Google Health, and Android Health Connect all sync directly through *your* server (OAuth tokens stay server-side, browser never sees them). Steps, sleep score, HRV, RHR, weight, body composition, active minutes, workouts. Derived Readiness + Resilience scores are computed server-side so you get them even if your wearable doesn't natively.
**Trace AI assistant** (optional, BYO provider). Natural-language food logging ("log a slice of pizza and a beer"), Smart Log voice recording, goal insights, nutrition-label photo extraction. Works with Claude / OpenAI / Gemini / any OpenAI-compatible endpoint (Ollama / LM Studio / LocalAI / vLLM / etc). Server-side proxy option means the AI backend can live on a private Docker network. Nothing about the app requires AI. Disable it entirely and everything else still works.
**Recipes + meal planning.** Recipe editor with per-ingredient nutrition, scaling, notes; save meals for one-tap re-logging; copy-past-diary-forward flows for the "same lunch again" case.
**Multi-user.** Accounts, OIDC SSO (Authentik / Keycloak / Authelia / Google / Pocket ID / anything OIDC-compliant), invites, admin console. Family and household-friendly out of the b..."