Quick update for anyone following the project. NutriTrace is a self-hosted nutrition tracker I’ve been building. Single Docker container, your data stays on your hardware, no external accounts.
This release ships the first native Android app alongside the existing PWA. Signed APK is attached to the GitHub release.
What you get on Android:
- Standalone, or connect it to a NutriTrace server for sync
- Health Connect for steps, sleep, heart rate, body weight
- Native barcode scanning
- Native notifications for water reminders, meal prompts, weigh-ins, and goal celebrations
- OIDC SSO via deep link if you run Authentik, Keycloak, Pocket ID, etc.
Release: https://github.com/TraceApps/nutritrace/releases/tag/v1.0.0-rc.14 Repo: https://github.com/TraceApps/nutritrace
Still on the v1.0 release-candidate cadence so there will be be bugs. Please feel free to post issues here or on Github.
Thanks to everyone who’s tried it, provided suggestions and filed bugs along the way. If you find it useful, a star on the repo or a mention to someone looking for a self-hosted nutrition/fitness alternative helps a lot.
Hey, thanks for the app. I’ve been playing around with it. Looks great. Interface seems snappy. I could use some advice on how to actually use it. Ok here goes… How do I enter an egg? Entry defaults to 100g. I tried serving, piece for units. I don’t really measure eggs. I’ve linked to the OFF and USDA databases. Unless it’s something I measure, entry feels wonky. What’s the best way to do this?
Hey, thanks for trying it out!
For things you don’t measure by weight (eggs being the classic example), the easiest path is to make a local entry once and then reuse it. A few ways to go about it.
The nutrition label on your egg carton is your friend here. It’ll show you the serving size, usually 1 large egg at around 50g, plus the full breakdown (calories, protein, fat, carbs). Tap the + on the Foods page, type those numbers in, set Serving size to 50 and Unit to “grams”. From then on, logging eggs is just typing “Quantity: 2” in the diary and the math takes care of itself.
For irregularly-sized stuff like apples or bananas, a kitchen scale is honestly the easiest path. A medium apple can swing anywhere from 130g to 220g, so weighing it once and typing the gram count gets you accurate numbers without needing a separate per-piece entry for every size.
One thing worth knowing about OFF and USDA results: the “100g” you see is just the per-100g nutrition density. That’s how those databases store everything, it’s a baseline reference, not a forced serving size. So you can either weigh your food and type the grams directly, or edit the entry to change the portion and unit (say to “1 piece” or “1 cup”) and the totals rescale.
Once you’ve dialed in a handful of items you eat regularly, day-to-day logging gets a lot faster. The new Favorites and Most Used sort in rc.19 will float your top items to the top of the Foods page automatically.
This is freaking great
Thank you! Enjoy the app!
Hey,
Like the look of the app so far. I will be spinning up a local server when I am not coming off a morning shift, and see if I can get a pass on the WAF.
Just a quick question, being in Australia the bulk of our food metrics are in kilojoules, I have selected this as the default energy measure however there are a few areas where I am still getting calories presented.
For example in the Diary I am getting kcals on both the food and the summary. I imagine you do everything in calories and this just slipped past but wondering if I missed a setting?
Also I had a quick scan and like that the AI integrations are optional but I was unclear if AI was used to code the project, do you have a position on that?
On the whole I am liking what I see so far.
Glad you’re enjoying it.
On the kJ, you’re right. The setting was being respected for goals and storage but a bunch of display spots still had kcal hardcoded. Just pushed the fix to dev and it’ll be in the next public release. Also added auto-detect so if your device locale is en-AU or en-NZ the wizard pre-selects kJ on first run, no toggle needed (but present now in settings).
On AI for coding, yes I utilize it. Claude Code to be specific. It makes me more efficient and helps lift the work I ship.
Will let you know when i push out the update, should be later today.
Just pushed rc.15 with the fix. Energy unit setting is now respected across the app, and the wizard auto-picks kJ for AU and NZ on first run.

