Skip to content
Back to Home
AI Fitness Tracker Title

AI Fitness Tracker

2024Personal Project – Pittsburgh, PA

AI Fitness Tracker lets you log meals and workouts using plain English. It parses foods, serving sizes, and macros to maintain daily totals and trends.

Important: The production/full version (not included in this site) is a Java Servlets + MySQL application with server-side authentication, persistent storage, and richer features (e.g., reminders, role-based views).

This portfolio includes a small, client-only demo that re-implements natural-language meal parsing in the browser so you can quickly try it out without a backend.

JavaServletsMySQLNLPOpenAI APINext.jsTypeScriptTailwindCharts
Personal Health mark
Features
  • Natural-language meal logging (e.g., "2 eggs and toast with butter, coffee")
  • Macro extraction: calories, protein, carbs, fat with a lightweight rules engine
  • Daily totals, editable log, and simple charts
  • Auth and roles in the original server version (Java + MySQL)
Technical Implementation
  • Full App (not included): Java Servlets backend with a normalized MySQL schema for users, meals, and nutrition entries (SQL), plus auth and reminders
  • Parsing: tokenization + quantity/unit detection + ingredient lookup with fallback heuristics (with optional GPT-assisted parsing)
  • Demo (this site): Client-only React/TypeScript parser, localStorage persistence, and computed totals
  • UI: Tailwind styling and accessible forms; charts placeholder ready for plug-in
Challenges & Solutions
  • Ambiguous inputs → Fallback database with portion defaults and user adjustments
  • Unit variety → Normalize to grams/ml; map to standard servings where possible
  • Porting from NetBeans/Tomcat → Browser-based demo removes server dependency for easy showcase
Technologies Used
  • Java, Servlets, MySQL (original full-stack)
  • Next.js, React, TypeScript (demo reimplementation)
  • Tailwind CSS for UI; Chart.js (optional) for trends
  • OpenAI API (optional) for advanced parsing and suggestions

Try the Live Demo

This is a mini, client-only demo for the case study. The full app (not included) uses Java Servlets + MySQL with richer features.