Inspiration
Some of our family members work from home and often talk about how hard it is to stay active during the day. They spend long hours sitting at their desks, and by the time work is over, they feel too tired or unmotivated to exercise. Hearing this made us realize how many people face the same problem — struggling to balance productivity with physical health. We wanted to design something that would make movement easy, fun, and built into the workday instead of feeling like a chore. That’s why we created MOVE: a playful, computer vision–powered game that encourages people to get up, stay active, and enjoy moving again — right from their desks.
What it does
MOVE is a browser-based, computer vision LLM model made to help people who work from home stay fit. This is not your boring yoga poses template app. We made this FUN! When a player starts the game the player will see themselves on their computer camera with yellow and red boxes that the player will have to avoid.
Firstly, yellow boxes will appear on the screen essentially acting as a warning for the red boxes to come. If the player is in the field of view of the red box then they will lose a life, each player will start with the 3 lives and once they are gone they will be routed to the GAME OVER page where they will be able to see their score and their high score. A player's score is calculated by how many rounds they survived, and in MOVE rounds are defined as each occurrence of yellow boxes turning into red ones.
Core gameplay
Instructions: Once you click start you will be routed to the instructions menu Rounds & difficulty: R1–6: 2 obstacles, 4s window R7–12: 3 obstacles, 3s window R12+: 5 obstacles, 2s window HUD: 3 lives, round counter, and session timer. On-device & private: video never leaves your machine.
How we built it
• Frontend: Next.js, React, TypeScript, Tailwind, jsx
• Computer Vision: MediaPipe Tasks Vision (Pose Landmarker, WASM + GPU delegate)
• APIs: WebRTC (getUserMedia), 2D Canvas
• Build/Tooling: Vercel/Next build, npm
Challenges we ran into
• Connecting the Frontend and Backend: One of our first major hurdles was linking the camera system to the game. We had built the core UI and gameplay screen, but the box interface wasn’t rendering correctly. At times, the boxes would start to appear and then the screen would suddenly turn black. Debugging this took several hours as we worked to ensure smooth communication between the frontend and backend components.
• LLM Integration: Once the rendering issue was solved, we faced another challenge integrating the computer vision model — specifically MediaPipe’s Pose Landmarker — into the game logic. Initially, the model’s tracking didn’t sync properly with our life-counting system. Players were being flagged for collisions without losing lives, which broke the core gameplay loop. After extensive troubleshooting, we refined the interaction between the pose detection and the scoring system.
• Game Depth: We also encountered what we called the “idle player” problem. When a user left the camera’s view or the landmarks disappeared, the game struggled to handle that state. It wasn’t a simple bug — we had to design a logic system that introduced a brief grace period, allowing players to re-enter the frame without being penalized. Developing this mechanic was one of the trickiest but most rewarding parts of the project.
Accomplishments that we're proud of
• A clean minimalist design that’s easy to grasp. We brainstormed multiple ideas using different software and whiteboards before we finalized on our design.
• We successfully incorporated computer vision into our project and were able to use it to detect “inputs”. Used MediaPipe LLM post lan maker model to track our movements with our camera which was then used for the logic of the game.
• Collaborated effectively with group mates.
What we learned
• The importance of decoupling CV inference from drawing. Write pose into refs, then render in a predictable order.
• UX matters: visible timers and brief cooldowns dramatically improve learnability and fairness.
• Small stabilizers (EMA, hysteresis) beat heavy filtering for real-time feel.
What's next for MOVE
• Connecting a companies’ database needing the player/worker’s information
• Mobile support with back-camera adaptability.
• Different game modes
• Accessibility for everyone (people sitting down, voice-access).
Built With
- computervision
- mediapipe
- next.js
- npm
- poselandmarker
- react
- tailwind
- tasks
- typescript
- vercel/next-build
- wasm
- webrtc




Log in or sign up for Devpost to join the conversation.