What it does

Physico is a mobile-first physiotherapy assistant that uses your phone's camera to guide you through recovery exercises in real time. It tracks your body movements using MediaPipe pose detection and gives instant feedback — telling you if your arms are straight, if your shoulder rotations are big enough, or if your neck tilts are deep enough. It also provides a structured 12-week recovery program with weekly workout plans, daily exercise checklists, and progress tracking.

How we built it

We built it as a React + Vite web app styled for mobile (390px phone layout). The camera tracking uses MediaPipe Tasks Vision with a pose landmarker model running in VIDEO mode. We built three exercise components — ArmTracker, ShoulderRotation, and NeckTilt — each with real-time angle and movement detection. The weekly workout system uses a day-by-day checklist with localStorage persistence. We used Git feature branches throughout to keep each component isolated.

Challenges we ran into

Getting the pose detection to run smoothly in real time without dropping frames was tricky. Calculating meaningful angles and movement thresholds that work across different body sizes and distances from the camera took a lot of tuning. We also had to carefully manage the camera and animation loop cleanup to avoid memory leaks between page navigations.

Accomplishments that we're proud of

We built a working real-time pose detection system from scratch with no ML experience going in. The three exercises each use different detection techniques — angle calculation, wrist history tracking, and nose position normalization — and they all give meaningful live feedback. We also shipped a full end-to-end app flow from onboarding through to weekly workout tracking.

What we learned

How MediaPipe landmark coordinates work and how to normalize them to be camera-distance independent. How to structure a React app around a camera loop without causing performance issues. The importance of Git branching when multiple people are working on different features at the same time.

What's next for Physico

Connecting the camera exercises directly into the weekly workout plan so completing an exercise in the tracker marks it done in the checklist. Adding rep counting so the app can automatically track sets and reps. Expanding to more body parts beyond the arm and shoulder. A backend with user accounts so progress syncs across devices rather than staying in localStorage.

Built With

Share this project:

Updates