Build a vtuber-style avatar that mirrors your face and body movements from a webcam in real time
Animate a 3D VRM character using head rotation and facial expression values from MediaPipe face tracking
Create a 2D anime-style Live2D character that reacts to your hand and body gestures captured by camera
Officially deprecated, functionality is being integrated into MediaPipe directly. New projects should use MediaPipe instead of this library.
KalidoKit is a JavaScript library that takes face, body, and hand tracking data from a camera feed and converts it into the values needed to animate a 3D or 2D avatar in real time. The result is a vtuber-style experience where movements of the person in front of the camera are reflected in an on-screen character. The library does not do the tracking itself. That part is handled by separate AI models from Google's MediaPipe or TensorFlow.js, which detect where your face, eyes, hands, and body are in each video frame and return a set of coordinate points. KalidoKit takes those coordinate points and calculates the rotation angles and blending values needed to move an avatar's head, arms, fingers, and facial expressions accordingly. It is organized into three classes: Face, Pose, and Hand. Each takes the relevant set of landmark points as input and returns the motion values for that part of the body. There are also smoothing utilities to reduce jitter in things like eye blinks. The library is compatible with two types of avatar formats: VRM (3D models often used in VR and social apps) and Live2D (a format common in anime-style 2D character animation). The README includes ready-to-remix starter templates on Glitch for both formats, using Three.js for the 3D case and Pixi.js for the 2D case. Note from the repository: KalidoKit is officially deprecated. Its functionality is being folded directly into MediaPipe, so new projects should look there instead of using this library. The library is available on npm and via CDN.
← yeemachine on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.