Inspiration

According to our user survey, 76% of runners run to maintain their weight and body shape. However, many runners struggle with how to reach their goals effectively — 27% don’t know how to increase speed, 30% don’t know how to build a habit, and 15% don’t know how to extend their running distance.

This inspired us to create Runalyze, a personalized running companion app that helps users form consistent habits, and achieve their fitness goals based on their individual needs.

What it does

Runalyze is a mobile app designed to personalize the running experience based on each user’s goals. Here's what it does:

  • Starts with a questionnaire to understand the user’s motivation.
  • Categorizes users into one of three runner types:
    1. Habit Builder – wants to maintain fitness
    2. Distance Seeker – wants to run farther
    3. Speed Chaser – wants to run faster
  • Generates target pace and distance for the day, based on user type.
  • Tracks real-time pace, distance, and progress during each run.
  • After the run, provides a personalized report with hashtags and feedback.
  • Stores all reports in a historical archive, accessible anytime.
  • Includes a calendar-based check-in system to visualize running consistency.
  • Lets users adjust their running goal at any time by retaking the questionnaire.

How we built it

  • Frontend: Flutter
  • Backend: Flask + REST API
  • State Management: SharedPreferences for persistent user data
  • Realtime Tracking: Custom logic for pace/distance tracking and progress monitoring
  • Data Analysis: Categorization and personalized feedback generation based on running stats
  • UI Design: Emphasis on clarity, motivation, and habit reinforcement

Challenges we ran into

  • Designing a user flow that adapts dynamically to different types of runners
  • Creating meaningful and motivational feedback based on raw running data
  • Managing asynchronous data fetches and updates in Flutter
  • Balancing feature richness and simplicity in the UI
  • Handling edge cases like missing sensor data, GPS issues, and incomplete runs

Accomplishments that we're proud of

  • We turned real user survey insights into an app that feels genuinely helpful.
  • Built a complete personalized running loop: from goal setting → running → reflection.
  • Developed a modular system that can be extended for more fitness modes in the future.
  • Integrated motivational elements like hashtags, progress bars, and check-ins to enhance stickiness.

What we learned

  • How to build a habit-driven fitness app rather than just a tracker.
  • Importance of user onboarding and asking the right questions early on.
  • How to combine motivation, data, and simplicity in one product.
  • How to use Flutter and Flask effectively in an end-to-end app workflow.

What's next for Runalyze

  • Integrate AI-based coaching feedback based on past performance trends.
  • Add social sharing features and peer challenges.
  • Expand support for more activity types (cycling, walking, etc.).
  • Enable goal adjustment over time based on user consistency and fatigue levels.
  • Launch on app stores and gather feedback from a broader user base.
Share this project:

Updates