Inspiration
Many people living with conditions like diabetes, hypertension, and obesity are encouraged to walk regularly as part of long-term treatment and prevention. The challenge is not knowing that walking helps, it is staying consistent with it. Traditional fitness routines can feel repetitive and hard to sustain, especially without immediate feedback or motivation. We built CalorieChase to make movement more engaging by turning a walk or run into an interactive, map-based game with custom routes, live progress tracking, and collectible rewards.
What It Does
CalorieChase is an Android app that lets users create a custom walking, jogging, or running route by choosing:
- activity type: walk, jog, or run
- target distance
- starting point
- a natural-language prompt for route preferences
The app sends this request to an AI-powered backend, which generates a route, places collectible treasure coins along the path, and returns the result to the mobile app for visualization on the map. During the session, users can follow the route in real time while tracking distance, steps, elapsed time, score, and estimated calories burned. The calorie estimate is computed using exercise MET values and user inputs such as height and weight.
How We Built It
We built CalorieChase with:
- Android (Java) for the mobile application
- Google Maps SDK for route rendering and map-based gameplay
- Fused Location Provider and activity/step tracking for real-time movement updates
- FastAPI for the backend API layer
- LangGraph to orchestrate the route-generation workflow
- Gemini / LLM-based reasoning to interpret natural-language route prompts
- Google Maps APIs for geocoding, destination lookup, and directions
The backend agent is structured as a multi-step workflow. First, the user’s request is parsed from natural language into structured parameters such as start location, destination, activity type, distance target, and route intent. We used Gemini as the reasoning layer to interpret user prompts semantically instead of relying only on rigid form inputs. This allowed the system to understand requests like scenic preferences, loop-style routes, or destination-based runs.
After parsing, the agent resolves locations through geocoding, determines whether the route should be a loop or point-to-point path, and calls mapping services to generate coordinates and directions. Once a valid path is returned, the backend computes estimated distance, calorie burn, and game metadata, then injects collectible coin locations along the route. Finally, the agent produces a friendly route summary and returns the full payload to the Android client, which powers both the route preview screen and the live game session.
Challenges We Ran Into
One of the biggest technical challenges was turning an LLM response into a reliable routing pipeline. Natural-language prompts are flexible, but route generation requires structured, deterministic inputs. We had to build logic that could parse ambiguous prompts, validate outputs, and recover gracefully when the model or mapping APIs produced incomplete or unstable results.
Another major challenge was route correctness and gameplay consistency. A route could not just be valid on a map, it also had to match the requested distance closely, support loop generation, and remain suitable for live tracking. We had to handle issues like geocoding fallbacks, overlong or unrealistic routes, destination resolution, and keeping coin placement aligned to the actual path geometry.
On the mobile side, integrating real-time GPS updates, step sensing, and map rendering introduced synchronization challenges. We had to make sure the user’s live position, route path, and collectible state stayed in sync without creating a laggy or confusing gameplay experience.
Accomplishments That We’re Proud Of
We are proud that we built a full end-to-end intelligent fitness system in less than 20 hours. That included a native Android client, a FastAPI backend, map integrations, sensor-based live tracking, and an agent workflow capable of converting natural-language prompts into playable routes.
We are also proud of the way the system combines AI orchestration, geospatial APIs, and real-time mobile interaction into a single experience. Instead of building only a route planner or only a step tracker, we connected prompt understanding, route generation, path visualization, coin spawning, and live workout metrics into one cohesive product.
From a technical perspective, one of our strongest accomplishments was creating an agent pipeline that is not just generative, but stateful and workflow-driven. Using LangGraph allowed us to move beyond a single model call and build a sequence of reasoning, validation, route construction, metric calculation, and summarization steps that made the app far more robust.
What We Learned
We learned how to make an agent more context-aware and workflow-aware, not just prompt-aware. We also learned a lot about integrating LLM reasoning with deterministic APIs, especially in cases where AI flexibility needs to be constrained by real-world map and sensor data.
What’s Next for CalorieChase
- Improve route quality and agent reasoning logic
- Personalize route recommendations based on user goals and history
- Add shareable routes and friend challenges
- Expand the social and competitive gameplay layer
Log in or sign up for Devpost to join the conversation.