An independent technology lab with one mission: the joy of creating, for everyone. It starts from PocketJS, a compact UI runtime, and grows purpose-built engines small enough for anyone to hold.
Game engines exist so more people can build worlds. Every Pocket project grows from the same root: the joy of creating belongs to everyone. AI is democratizing software production itself, so a small lab can now grow a purpose-built engine for each kind of creation, each small enough to understand and own. PocketJS is the shared trunk. Everything below grew from it.
PocketJS runs Solid, Vue Vapor, and Octane components on one Rust core with one layout engine everywhere. The same bundle boots on a 2004 PSP, a PS Vita, an e-ink reader, and a Mac, without editing a component.
Every frame is one transaction over the input tape. Same tape in, same trajectory out, byte for byte, which is why every engine in this lab can be tested like a pure function.
$ pocket check --target psp ok 480x272 · text.glyphs.baked · input.buttons $ pocket check --target vita ok same bundle, density 2, no component edited
16 programs · 1 runtime · engine output only
PL-01 · burn yes · one state hash
PL-02 · route 1, 30 fps
PL-03 · vue on gba, 9.1 KB
PL-06 · agent in 304 KB