π§ FlexAI β Smart Fitness at USF
β¨ Inspiration
As students at University of South Florida, we realized how hard it can be to stay motivated, discover workout routines, or even know what resources are available on campus for fitness. FlexAI was born out of the desire to create an AI-powered fitness companion that understands each student individually β from their dorm location and dietary restrictions to their fitness goals β and builds a plan thatβs personalized, fun, and community-driven.
We wanted to make something that wasn't just another fitness tracker β but a smart assistant that adapts to you, and also rewards your efforts.
π οΈ How We Built It
FlexAI is built using SwiftUI for the iOS interface and integrates with Firebase for authentication, Firestore storage, and user profile management. Here's a breakdown of the core components:
- FirebaseAuth: For secure user login/signup (including Google Sign-In)
- Firestore: To store user data, AI-generated workout plans, social posts, and challenges
- SwiftUI: Clean, reactive UI across onboarding, dashboard, and social views
- AIPlanService (custom class): Generates detailed workout plans based on user preferences and bio data
- Multi-step Onboarding Flow: Captures user info including height, weight, dorm, dietary restrictions, and preferences
- Dynamic Dashboard: Shows AI workout plan, personalized challenges, and point-based rewards system
π‘ What We Learned
- How to build a multi-step onboarding flow with state-driven navigation
- Integration of FirebaseAuth and Firestore to sync real-time data with UI
- Handling Firestore permissions, data models, and conditionally rendering views (like skipping onboarding for returning users)
- Implementing a modular architecture using
@EnvironmentObjectand@Publishedto keep the app reactive and scalable - Designing user experiences that combine AI, social motivation, and gamification
β οΈ Challenges Faced
- Handling the state-based flow transitions (e.g., onboarding β dashboard) while keeping everything reactive in SwiftUI
- Preventing redundant Firestore calls and syncing data only when necessary
- Ensuring compatibility between Google Sign-In and
FirebaseAuth - Making the UI intuitive while packing in multiple features like group discovery, challenges, and AI insights
π What's Next
- Dorm-specific leaderboards & group matching
- Real-time challenge tracking (e.g., step count, reps)
- A built-in workout logger
- Integration with HealthKit for syncing physical activity
- AI chat support for quick fitness questions or campus gym tips
FlexAI is more than just an app β it's an effort to bring community and personalization to student wellness in a smart, scalable way. πͺπ’π‘
Log in or sign up for Devpost to join the conversation.