pocket-stack/pocket-character — explained in plain English
Analysis updated 2026-05-18
Run a lightweight animated desktop character widget instead of an Electron-based one.
Measure and compare CPU and resource usage between a native app and its Electron equivalent.
Swap in a different character personality by writing a new script bundle without rebuilding the host.
| pocket-stack/pocket-character | dhkts1/teamclaude-rs | eternal-flame-ad/unitdc-rs | |
|---|---|---|---|
| Stars | 5 | 5 | 5 |
| Language | Rust | Rust | Rust |
| Last pushed | — | — | 2024-10-12 |
| Maintenance | — | — | Stale |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 3/5 | 2/5 | 2/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires a stable Rust toolchain and Bun, and is only verified on Apple Silicon Macs.
pocket-character is a small desktop widget that shows a 3D animated character on your screen, similar to the digital companion apps some people run alongside games or streams. It takes the same character stage used by an existing project called airi, which is built on Electron, and reimplements it as a single lightweight native program instead. The widget shows a VRM format 3D character in a transparent, frameless window that stays on top of other windows and can be dragged anywhere on screen. The character idles with looping animation, blinks naturally at random intervals, moves its eyes slightly on its own, and its hair and clothing physically sway using spring bone physics based on the model's own data. Behind the scenes, the character's behavior is controlled by a small script bundle running in an embedded QuickJS engine, so someone could swap in a different character personality without rebuilding the whole program. The project's stated purpose is to measure a specific question: how much cheaper is this same character widget when built on this lighter native runtime instead of Electron. It includes scripts to reproduce those CPU usage measurements against the original airi project on the same machine, and a written comparison report. The code is organized into a macOS-specific widget host written in Rust, a portable behavior simulation for things like blinking and eye movement, and a separate guest script bundle. To try it, you need a stable Rust toolchain and the Bun JavaScript runtime, and it has only been tested on Apple Silicon Macs. After cloning the repository with its submodules, you run a setup command that downloads the required 3D model and animation assets, then a build and run command to launch the widget. The model and animation assets are fetched separately at setup time because their licenses are not MIT and cannot be redistributed with the code.
A lightweight native desktop widget that displays an animated 3D character, built to measure how much cheaper this is versus an Electron-based version.
Mainly Rust. The stack also includes Rust, QuickJS, Bun.
The README does not state a license for the code, the bundled 3D model and animation assets are explicitly not MIT licensed and are downloaded separately.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.