Skip to content
Neal Gysemans
All projects
2026Built — internal infrastructure & unreleased

MacroTrack

An AI meal tracker built around one idea — you should be able to say what you ate and be done. Speech or free text, no search box, no portion guessing.

Role
Sole developer — schema, Edge Functions, app, iOS submission
Stack
  • React 19
  • Vite
  • Tailwind 4
  • Supabase
  • Capacitor
  • Gemini
MacroTrack's Today screen with 705 calories remaining against a 2,400 kcal goal, protein, carbs and fat tracked against their own targets, and the day's logged meals beneath
Screenshots show the real software. Any names, plans or workout history in them are locally seeded demo data, never real customer data.

Status

Unreleased. Built as a web app and wrapped for iOS with Capacitor from one codebase. Free, with a ceiling of five AI logs a day.

Decisions

Meal parsing runs server-side

Meals are parsed in Supabase Edge Functions against Gemini, so provider keys never enter the client bundle.

Measured before claimed

Server-side parse latency is 1,155 ms median and about 1,690 ms at p95, and cost varies 3.2× with the number of items in a meal. There is no measured end-to-end figure, so the copy makes no “five-second” claim.

Speech and free text over barcodes

Packaged-food barcode scanning was deleted so the product could focus on speech and free text.

What it cost

  • Server-side parsing: a network hop on every log, plus Edge Functions to deploy and run.
  • Measured claims: quieter marketing copy.
  • Dropping barcodes: working code removed, and a repository name that still says otherwise.
The logging sheet with a meal-type selector, a free-text field reading "two scrambled eggs on sourdough toast with butter, and a flat white", a microphone to speak it instead, and a note that the text goes to Google Vertex AI
Logging a meal in your own words, typed or spoken.
The consent screen shown before any AI logging: what is sent to Google, that voice is transcribed in the cloud, that name, email and account ID are not sent, and that consent can be withdrawn while manual logging keeps working
The consent screen shown before the first AI log.
The manual path: search for a food, or quick-log a name with grams, calories and macros typed by hand
The manual path, which keeps working without AI consent.