Analysis updated 2026-05-18
Turn a set of expression PNGs and hair layers into an animated PNGTuber avatar for streaming.
Ask a coding agent to auto configure a new character's files and anchor point settings from raw art.
Track your face or mouth movement locally to drive blinking, talking, and head turning in real time.
Export a finished character as a single portable file to back up or move between computers.
| rotejin/purupurupngtuber | yyx990803/release-tag | cupidbity/cupid-music-player | |
|---|---|---|---|
| Stars | 114 | 113 | 112 |
| Language | JavaScript | JavaScript | JavaScript |
| Last pushed | — | 2023-12-14 | — |
| Maintenance | — | Dormant | — |
| Setup difficulty | moderate | easy | easy |
| Complexity | 2/5 | 2/5 | 2/5 |
| Audience | vibe coder | developer | general |
Figures from each repo's GitHub metadata at analysis time.
Requires preparing correctly aligned transparent PNG layers before a character can be set up.
PuruPuru PNGTuber is a local browser app for building animated PNGTuber avatars, the flat image based streaming characters popular with virtual streamers. It builds on the usual PNGTuber approach of swapping expression images for different eye and mouth states, but adds two extra layers, front hair and back hair, so the hair can sway and move independently of the face. The intended workflow leans on AI coding agents. You prepare a set of aligned transparent PNG images for a character, including the expression variations, front hair, and back hair, and then ask a coding agent such as Codex or Claude Code to organize the files, rename them correctly, and generate the character's initial settings file with face, eye, mouth, and hair anchor points. After that setup step, you fine tune the character visually inside the browser, adjusting expressions, head turning, hair sway, and any extra items like ribbons or hairpins. Once a character is set up, it can talk based on microphone volume or a demo mode, blink automatically, and follow the mouse or track your face through the camera, with face tracking capped at 15 frames per second on the CPU by default to avoid heavy GPU use. Finished characters can be exported as a single portable file that bundles the images and all adjustment settings together, so a character can be backed up or moved to another computer without keeping track of the original image folder. To run it, you need Python 3.10 or later and a Chromium based browser, and you start a local server with a provided script rather than opening the app's HTML file directly. Camera and microphone data are processed locally in the browser. The software and documentation are released under the Apache 2.0 license, while the bundled demo avatar images and other visual assets are covered by a separate asset license.
A local browser app that turns expression PNGs plus separate front and back hair layers into a swaying animated streaming avatar.
Mainly JavaScript. The stack also includes JavaScript, Python, MediaPipe.
The software and docs can be used freely including commercially under Apache 2.0, but the bundled demo avatar images and visuals follow a separate, more restrictive asset license.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly vibe coder.
This repo across BitVibe Labs
Verify against the repo before relying on details.