Michael Dichuk
All work
2026Mobile app with AI

Heaven Meal AI

My own product: a calorie counter that reads a meal from one photo. Every food on the plate, its weight in grams, calories and macros, plus one clear next step for the day.

Challenge
Ask an AI model how many calories are on a plate and it answers confidently, and differently every time. A user who gets two numbers for the same meal stops trusting the app.
My role
Architecture and full development: Flutter app for iOS and Android, Firebase backend, AI photo analysis, nutrition engine and daily limits.
Stack
Flutter, Firebase, Claude API
Heaven Meal AI screens: daily dashboard with coach advice, weight progress and meal journal

Context

Heaven Meal AI is my own product, now being prepared for release on the App Store and Google Play. You point the camera at a plate and get the list of foods, the weight of each in grams, calories and macros with a confidence score, and a short piece of advice on what to eat next.

It is a wellness tool that gives estimates. It is not a medical device.

My role

I am the founder and the only engineer: architecture, the Flutter app, the backend and the release preparation.

  • The model never returns a calorie. It answers two questions only: what is on the plate and how many grams. The response format has no fields for calories or macros, so an invented number is rejected by the API. Every figure the user sees is calculated on the server from nutrition databases (USDA FoodData Central and Open Food Facts).
  • Honest uncertainty. Confidence is calculated per meal and shown to the user. If the plate cannot be read, the app says so and the attempt does not count against the daily limit.
  • It learns from corrections. When a user fixes a portion, the app remembers how this person actually eats and uses it in the next estimate.
  • Targets from the body and the goal, not a generic 2,000 kcal. If the requested pace would push intake below a safe minimum, the plan says so and offers a pace it can deliver.
  • A coach instead of a spreadsheet: one short message a day, built on the real numbers.
  • Photos are never stored. The image is analysed and discarded within seconds. Only the numbers are kept, and nothing that identifies the user is sent to the AI model.
  • AI cost under control: images are downscaled on the phone, repeated photos are served from a cache, a stronger model is called only when it would change the answer, and the daily limit is enforced on the server.
  • Keys and limits live on the server: the AI key is never in the app, and the endpoint accepts requests only from the genuine app.

Result

A working app for iOS and Android where the AI does what it is good at, recognising food, and every number the user sees can be traced to its source. The same plate gives the same answer, and when the app is not sure, it says so.

Next caseDropsLook

Building something similar?

Tell me about it. You'll get next steps and a rough timeline.