πŸ‹οΈβ€β™‚οΈ About the Project – Fit2Apple

πŸ”₯ Inspiration

While working on fitness app integrations, I noticed a common problem: many apps log the wrong workout type in Apple Health. Whether it’s logging a HIIT session as "Other" or a strength workout as "Functional Training", these misclassifications break the user experience β€” especially for those who rely on accurate fitness tracking. I built Fit2Apple to solve this.

πŸ’‘ What I Learned

  • How Apple HealthKit handles HKWorkoutActivityType and the importance of accurate classification for sensor tracking and user insights
  • The diversity of workout formats and how users and apps interpret them differently
  • Developers need simple, pluggable APIs they can trust without adding manual mapping logic

πŸ› οΈ How I Built It

  • Tech Stack: Node.js, AWS Lambda, API Gateway, DynamoDB, and RapidAPI
  • Designed a 4-stage data pipeline:
  1. Normalization of workout input (e.g., reps, sets, rounds, intervals)
  2. Heuristic rules & inference based on structure, pacing, and intensity
  3. Activity type classification into the most accurate HKWorkoutActivityType
  4. Return metadata to help developers understand the classification reasoning

🚧 Challenges

  • Apple provides no public documentation or guidance for how to choose HKWorkoutActivityType based on custom workouts
  • Workout formats are inconsistent across platforms β€” from circuits to Tabata to freestyle
  • Developers rarely think about the Apple HealthKit implications until users complain
  • Finding the balance between too simple and too complex was tricky β€” I had to support edge cases while keeping the API intuitive

Built With

Share this project:

Updates