Inspiration Tracking nutrition should be simple, but most apps make it tedious with manual search, portion guessing, and repetitive logging. We built SnapCal to remove that friction. The idea was to make calorie tracking as easy as taking a photo, so healthy habits feel lightweight and sustainable instead of stressful.
What it does SnapCal is an AI-powered meal scanner that estimates nutrition from a food photo. Users can:
Upload or capture a meal image Get an instant estimate of calories, protein, carbs, and fats Add the meal to a daily log View day-wise totals and macro progress in a clean dashboard How we built it We built SnapCal as a lightweight web app using:
HTML/CSS for a mobile-first UI Vanilla JavaScript for app logic and state Gemini Vision API for food image analysis Browser localStorage for persistent daily logs The app pipeline is:
User uploads a meal image Image + prompt is sent to Gemini JSON nutrition response is parsed Result is rendered and can be logged Daily dashboard updates rings/macros in real time Challenges we ran into API integration changes while switching between model providers Secret management and push protection issues when preparing the repo Handling inconsistent AI response formatting and parsing reliable JSON Balancing speed vs. accuracy for nutrition estimation Keeping the UX smooth on mobile while preserving a clean visual style Accomplishments that we're proud of Built a working end-to-end photo-to-nutrition flow Designed a polished, mobile-friendly interface with clear feedback states Implemented daily tracking with macro and calorie visualization Refactored key handling to avoid hardcoding sensitive API keys Prepared a hackathon-ready project with documentation and deployment flow What we learned Prompt design and response-shape constraints matter a lot for stable AI output Security hygiene (secret handling, git history, push protection) is critical even in prototypes Small UX details (loading state, one-tap logging, visual progress) massively improve usability Iterating quickly requires modular API-call architecture so model/provider swaps are easier What's next for SnapCal Improve portion-size estimation and confidence scoring Add meal history analytics (weekly trends, goal adherence) Support user profiles, custom calorie targets, and reminders Add barcode scanning + packaged food lookup Introduce backend proxy/auth for stronger security and multi-device sync Expand into personalized recommendations (meal suggestions and macro coaching)
Log in or sign up for Devpost to join the conversation.