Semantic, not matrices
Models write phases and joint angles, like knees: flex 95,
instead of 3D transforms. The closed syntax makes the intended anatomy inspectable.
Movement is programmable
Turn readable instructions into structured, inspectable 3D motion. Build exercises, stretches, dance phrases, and rehab routines, then edit every beat live in the browser.
Models write phases and joint angles, like knees: flex 95,
instead of 3D transforms. The closed syntax makes the intended anatomy inspectable.
Joint targets are constrained to configured reference ranges, while reach residuals expose a fist, foot, or knee that remains short of its target.
Generation is compact text. Rendering is forward kinematics and constrained IK in Three.js on the user's device, with no server-side diffusion pipeline.
See it move
A taste of the library, from physiotherapy and posture to yoga, dance, and martial arts. Every movement opens in the playground, editable and shareable.
How it works
.posecodeGive the Posecode authoring guide to a capable model and ask for a representable movement. For a supported request, its raw .posecode output remains editable and reviewable.
A TypeScript parser enforces the closed vocabulary, joint/action compatibility, contacts, and configured range limits.
Forward kinematics plus constrained contact IK animate a low-poly figure live in the browser.
For developers
Live editor, 3D viewport, syntax highlighting, inline range-of-motion diagnostics.
Let a model in an MCP client validate a movement and get back a render link.
npx -y posecode-mcp
Highlighting, completion, hover docs, and ROM diagnostics for .posecode files.
posecode-parser, posecode-render, and posecode-share are framework-agnostic and on GitHub.
FAQ
.posecode text. Paste it into the
playground: valid documents animate, while parse errors, range clamps, and
unresolved reach targets appear as diagnostics.