Inspiration
My family gave me the first product question. My son receives occupational therapy, and my stepfather experienced a stroke. Their experiences made me consider how technology could make physical practice easier to find. I also considered the work that caregivers do to find suitable activities.
Then I did some of the exercises myself. The beat helped me control the time of each movement. A cross-body movement made me pay attention to each side. The exercises looked simple, but I had to listen, move, balance, and keep time.
That experience changed the product idea. I built Motion Connector for healthy adults who want a playful way to practice rhythm, balance, coordination, and attention. It is a wellness application. It does not diagnose or treat a medical condition.
I made metronome games before Build Week. During Build Week, I used GPT-5.6 Sol to review mind-body and motor-learning research. The source library indexes 47 studies and frameworks. The exercise library contains 27 variants. The application uses 16 exercises from this library.
Product description
Motion Connector gives a four-minute camera session to a healthy adult. The user selects one focus and starts the session. A self-hug then controls the navigation. One round has calibration, explanations, three exercises, feedback, and a report.
MediaPipe calculates pose landmarks in the browser. TypeScript code changes the landmarks into movement events. The code matches each event to an exact hand, knee, and beat cue. Missed, wrong, and extra movements reduce the exercise score. It measures camera quality separately and compares attempts only when the setup and camera evidence are equivalent.
GPT-5.6 Sol uses the user's goal, movement mode, calibration, and previous results to shape the session. The model selects three permitted exercises and one of six levels for each exercise. New exercises start at Level 1. A repeated exercise can change by only one level.
The round report shows three exercise scores. Each exercise has its own six-level path. A self-hug starts another round. Two raised hands finish the session.
The model also explains measurements that the code saved. It cannot add an exercise or change a score. It does not control the camera process. Fixed plans and feedback operate if a model request fails.
Camera frames stay in the browser. The server does not receive video or full pose frames. SQLite stores profile data, settings, scores, feedback, and a bounded event trace.
The public website explains the product before the first session. A research atlas shows 12 representative sources from the larger library. Each source entry gives a finding and a limit.
Development
I used Codex to organize the research before I wrote application code. Codex helped me make the exercise library, product plan, and minimum lovable product.
Codex then helped me make the React and Bun application. The application also uses TypeScript, SQLite, Zod, MediaPipe, and the OpenAI Responses API. Codex tested the application in its browser during development. The current test suite has 98 passing tests.
The camera data caused difficult errors. MediaPipe keeps anatomical left and right. The user sees a mirrored camera image. I kept the landmark data in its initial condition. I mirrored only the image on the display.
A cross-body reach also passes near the same-side knee. The detector must wait for the completed reach before it selects one target. Tests now examine these movement paths and both anatomical sides.
The user operates the application from a distance. Small controls are not useful at this distance. I used large text and one task on each screen. A held self-hug continues or stops the session. Two raised hands finish the session.
The family story gave me the first question. The research showed that a mind-body connection is not one process or one score. I selected healthy adults as the users. This decision changed the exercises, the product statements, and the design.
Lessons and next work
At first, I wanted to add points and streaks. After the exercise loop operated, I found that these elements were not necessary. The beat gives the user a target. The movement gives the user a challenge. The movement map gives the user a reason to try another pattern.
I also learned that one score must answer one clear question. The exercise score measures completed requested targets. The score includes missed and extra movements. Timing and camera coverage remain separate measurements.
Next, I will test Motion Connector with healthy adults in different rooms and with different cameras. I will examine whether users apply the report in the next attempt. I will also examine whether the movement map makes them try another pattern.
Built With
- bun
- codex
- gpt-5.6
- mediapipe
- openai
- openai-responses-api
- pose-landmarker
- react
- sqlite
- typescript
- web-audio-api
- zod
Log in or sign up for Devpost to join the conversation.