RehabGames turns repetitive physical therapy movements into simple retro games you can play with your webcam. The idea came from noticing how easy it is to be bored of PT exercises because they feel repetitive and don’t give you any feedback. We wanted to make something that felt closer to the retro games we grew up with: bright colors, fast reactions, and a sense of progress, while still encouraging steady PT movement.
We built everything in JavaScript and HTML5 Canvas, with TensorFlow.js + MediaPipe handling the hand and arm tracking. The backend is Django, which stores scores, usernames, difficulty settings, and timestamps for the leaderboard. The webcam feed is processed in the browser, where we detect the wrist position and map it to the canvas so the paddle or character follows your arm smoothly. Each game has its own difficulty modes, left/right hand options, scoring, and real-time updates to the database through small fetch calls.
Most of the work went into getting the hand tracking to feel usable. Raw camera input is jittery, so we had to experiment with smoothing, thresholds, and motion curves to keep the controls from feeling twitchy. We also ran into typical hackathon problems, performance dips, layout issues, and making sure score submissions didn’t break anything. But by the end, we had a working system that actually makes physical therapy feel a little less like homework and more like something you’d willingly try again.
Built With
- django-4.2
- gunicorn
- html/css
- html5
- javascript
- mediapipe-pose
- python
- render
- sqlite
- tensorflow.js
- webcam-integration
Log in or sign up for Devpost to join the conversation.