Inspiration

RepPlan was inspired by a simple problem: people often know they want to get fit, but they struggle to plan workouts, stay consistent, and understand whether they are actually progressing. Existing fitness apps can feel overwhelming, while beginners may not know which exercises, sets, reps, or progression strategy are right for them.

We wanted to build something more personal and practical—a fitness companion that helps users plan their workouts, track every session, and make smarter decisions about their training.

What We Built

RepPlan is an AI-powered workout planning and fitness tracking platform designed to work like a personal training companion.

Users can create and manage workout plans, record exercises, sets, reps, and weights, and track their progress over time. The platform also uses AI to provide personalized workout guidance and recommendations based on the user's training needs.

The application is designed with a mobile-first approach and supports PWA functionality, making it convenient to use directly while working out.

Key Features

  • 🏋️ Personalized workout planning
  • 📊 Workout and progress tracking
  • 🤖 AI-powered fitness recommendations
  • 📝 In-gym workout logging
  • 📱 Mobile-first responsive interface
  • ⚡ Progressive Web App (PWA) support
  • 📈 Historical workout and performance insights

How We Built It

RepPlan was built using a modern full-stack architecture:

  • Frontend: React, TypeScript, Vite, and Tailwind CSS
  • Backend: Python and FastAPI
  • Database: Supabase / PostgreSQL
  • AI: OpenRouter-based AI integration
  • Deployment: PWA-focused architecture for a mobile-friendly experience

We separated the frontend, backend, database, and AI layers so that each part could be developed and improved independently. The frontend focuses on providing a fast and intuitive workout experience, while the backend handles application logic, data management, and communication with AI services.

What We Learned

Building RepPlan helped us understand much more than just writing code. We learned how to design and connect a complete full-stack application, from the user interface and API layer to database management and AI integration.

We also learned the importance of:

  • Designing interfaces around real user workflows
  • Building reliable REST APIs with FastAPI
  • Managing structured fitness data using PostgreSQL
  • Integrating external AI services into an application
  • Making web applications responsive and mobile-friendly
  • Handling asynchronous API requests and errors
  • Thinking about scalability, maintainability, and user experience

Most importantly, we learned how to turn a real-world problem into a practical software product rather than simply building a collection of features.

Challenges We Faced

One of the biggest challenges was integrating AI into the application in a way that was actually useful to the user, rather than adding AI just for the sake of having it. We had to think carefully about what information should be sent to the AI and how its responses could be converted into meaningful fitness guidance.

Another challenge was designing a smooth in-gym logging experience. Users need to record information quickly between exercises, so the interface had to remain simple, responsive, and easy to navigate on a mobile device.

We also faced challenges in connecting the frontend, FastAPI backend, database, and AI services while handling authentication, API errors, data consistency, and different application states.

What's Next

RepPlan is designed to grow beyond basic workout tracking. Future improvements could include more advanced progress analytics, adaptive workout plans, improved AI coaching, wearable-device integration, and smarter recommendations based on long-term training data.

Our goal is simple:

Make fitness planning more intelligent, tracking more effortless, and progress easier to understand.

RepPlan is our step toward building a fitness companion that doesn't just record what you did—it helps you decide what to do next.

Built With

Share this project:

Updates

Submission history