Inspiration

We started this project with a goal in mind: motivating each other to consistently exercise while also adding in a financial twist. What then came next was an idea that combined competitiveness with fitness tracking - turning walks and runs into a strategic game where players claim "territory" on a hexagonal grid map, earning points that can be redeemed for real financial rewards like restaurant discounts. We wanted to create something that not only encourages physical activity, but also offers ways to save money in your local area as an incentive. We also found the TAMUHack Tomato mascot really cute, and after seeing how funny it looks while rolling around, we decided to name our app "TomatoRoll".

What it does

TomatoRoll is a gamified competitive fitness and financial app that transforms exercise into an engaging territorial conquest game. Users connect their Strava accounts to track runs and walks, which are visualized on an interactive hexagonal grid map centered around the Texas A&M University campus. Each hex represents a small area of territory that players can claim by physically walking or running through it. The app awards points for discovering new hexes (100 points each) and capturing territory from other players (250 points each). These points can be redeemed for discounts at local restaurants through integration with Capital One's Nessie API, which captures the latest deals in your area. The app also features AI-generated walking routes of varying difficulty levels using Google's Gemini AI, which optimizes your chances of winning more territory.

How we built it

We built TomatoRoll as a full-stack web application with a desktop wrapper. The backend is powered by Python Flask, handling API integrations with Strava for fitness data, Google's Gemini AI for route generation, and Capital One's Nessie API for financial rewards. We used MongoDB for data storage, where player information, hex ownership, run data, and reward redemption history live. The H3 geospatial library enables precise hexagonal grid calculations for territory mapping. The frontend is built with React, featuring an interactive Leaflet map for visualization, routing between different views (login, map, rewards), and a mobile-first responsive design wrapped in a device frameset for an authentic mobile app feel. We also created an Electron wrapper to provide a desktop application experience.

Challenges we ran into

One of the biggest challenges was integrating multiple external APIs - Strava's OAuth flow for authentication, Gemini AI for generating realistic walking routes, and Capital One's Nessie API for merchant data. We struggled with the complexity of H3 hex calculations and ensuring accurate territory claiming based on GPS paths. Real-time map updates and polygon rendering proved tricky, especially with multiple players' territories overlapping. Along with this, we are currently limited to only one account allowed to utilize the Strava API, as requesting more accounts to access would require an application process of two weeks. Regardless, we worked with what we had and was able to manage our development workflow around roadblocks that popped-up unexpectedly.

Accomplishments that we're proud of

We're incredibly proud of creating a fully functional gamified fitness platform that successfully combines exercise motivation with financial education. The hexagonal territory system creates an engaging gameplay loop where physical activity directly translates to visible progress on the map. We successfully integrated four major APIs (Strava, Gemini, Capital One Nessie, and Mapbox tiles) into a cohesive experience. The AI route generation provides personalized walking challenges, and our rewards system turns fitness achievements into tangible financial benefits.

What we learned

This project taught us the intricacies of API integration, from OAuth flows to handling third-party data securely. We gained deep knowledge of geospatial programming with H3 hexagons and real-time map visualization with Leaflet. The experience highlighted the importance of user experience design in gamification - small details like color-coded territories and point multipliers significantly impact engagement. The full-stack development process showed us the challenges of state management across frontend and backend, and we discovered the power of AI in creating personalized user experiences. Finally, we learned that combining seemingly unrelated concepts (fitness + finance) can create truly innovative solutions.

What's next for TomatoRoll

We're excited to expand TomatoRoll into a comprehensive wellness platform. First step would be Strava granting us access to full API usage for multiple accounts. Next steps include developing a native mobile app for better GPS tracking and push notifications, adding social features like friend challenges and leaderboards. We'd also like to partner with local businesses for more diverse rewards and explore machine learning to provide personalized fitness recommendations. Long-term, we envision TomatoRoll as a community-driven platform where entire neighborhoods or campuses can compete in territory challenges, fostering both physical health and good financial practices across generations.

Figma Link: https://www.figma.com/design/XXIpvijR6sMeQH3KGZ9RZo/TAMUHack-Dream-Team?node-id=16-2&t=XzKObymjGQR2UIVA-1

FigJam Board Link: https://www.figma.com/board/nBOFR06dyJuQ4oDWeg03hL/TomatoRoll-Concept?node-id=0-1&t=BrvnPB0pOtENgFoN-1

Figma Breakdown: https://youtu.be/XytBmAN4xFc

Zoom Link: https://tamu.zoom.us/j/93708742246

Built With

Share this project:

Updates