Fit Connect AI
Follow Lifters Like You, Not Outliers
A working full-stack MVP, delivered as my graduation project.
Fit Connect AI is my graduation project at Arab Open University: a web fitness platform for natural lifters. It pairs workout tracking with a social feed where you follow people like you, plus AI summaries of your workouts.
The idea is simple: relatability over performance. The result is a working full-stack MVP that I delivered as my graduation project, supervised by Dr. Eid Emary.
The problem
Fitness media glorifies outliers. “Freak” physiques set expectations that most people will never reach, and that demotivates the everyday lifter who trains around a real life. If the only people you see are the best-looking ones, your own progress starts to feel like failure.
Mainstream apps do not help much here: they overlook natural lifters. I wanted to build the opposite: a place where the progress you see is progress you can actually reach.
Constraints
Three things shaped the design.
First, the audience is a niche. Natural lifters are a community that mainstream apps overlook, so I could not copy a general-purpose fitness app and expect it to fit.
Second, the social side had to stay honest. A feed can easily turn into a stage where people perform for an audience. That would have defeated the point of the project.
Third, every AI call costs money. Adding AI summaries is easy. Adding them without paying for calls that give the user nothing new is a design problem. This was the constraint I cared about most, because it is the one that decides whether an AI feature is affordable to run.
What I built
The platform has three parts that work together.
Workout tracking and benchmarks. A lifter logs their training and can benchmark against lifters with similar goals. The comparison is meant to motivate, not to rank.
A social feed. It is inspired by Strava: simple, and built around consistency. You follow people who train around real lives and similar constraints, not people with the best physiques. The feed rewards consistency and progress, not comparison.
AI summaries of your workouts. The system turns your recent training into a short written summary. These summaries sit behind a credit gate, and a call to the AI is blocked unless there is new workout data since the last one.
The flow runs from the lifter’s workout log, through the feed and benchmarks, to the summary, and each step is built to support the same goal: keep a normal person training consistently. The front end is built in React. The backend is Node.js and TypeScript, with PostgreSQL for data, Drizzle ORM and REST APIs, and Python also in the stack.
Key decisions
1. Relatability over performance. The choice was to match people by similar lifestyles and constraints rather than by physique goals alone. The alternative was to rank people by performance, which rewards the outliers I was trying to move away from. Following people like you means the progress on your screen is progress you could reach, and that is what keeps a beginner or an average lifter going.
2. A simple feed, built around consistency. I took inspiration from Strava and kept the feed minimal. The alternative was a richer feed with more ways to react, compare and show off. More features would have meant more ways to perform for an audience. A simple feed that highlights showing up, week after week, matches the honest social model I wanted.
3. A credit gate in front of every AI call. Summaries cost money each time, so I did not let them run freely. A user needs credits to request one. The alternative was to let people generate summaries as often as they liked and absorb the cost. I chose to make the cost visible and controlled from the start, because a feature that is expensive to run is a feature that cannot last.
4. No new data, no AI call. Even with credits, a call is blocked unless there is new workout data. If nothing has changed since the last summary, a second summary would say the same thing and spend tokens for nothing. The alternative was to rely on the credit gate alone. Blocking the call at the source is cheaper and also more honest to the user, because they only pay for something new.
5. AI as a force multiplier, with debugging staying my job. I built the platform with AI coding tools across the whole cycle. The alternative was to treat them as a shortcut for things I did not understand. They helped most when I understood the architecture, wrote clear prompts and knew why a bug happened. That is why I kept debugging as my own job.
Outcome
The outcome is a working full-stack MVP, delivered as my graduation project between January 2024 and May 2025.
I do not have user numbers, testers or a grade to report, so I will not make any up. What the project does show is the thinking behind it: a clear audience, a social model designed on purpose, and a way to use AI that is built to avoid waste from the first version.
Takeaway
AI doesn’t replace software engineers. It scales them, if they understand the architecture.







