Kata parses .kata scene files, evaluates logic in a sandboxed runtime, and drives any UI framework (React, Vue, vanilla JS) via a predictable typed protocol. You own the look and feel; Kata owns the story.
bun create kata-story my-game
cd my-game
bun devThat's it — you're in a live, branching narrative. From here, read the docs →
| Package | Description |
|---|---|
@kata-framework/core · 📖 |
Headless engine — parser, runtime, plugins, VFS, snapshots |
@kata-framework/react · 📖 |
React 19 bindings — KataProvider, useKata, save manager, tween layer |
@kata-framework/sync · 📖 |
Multiplayer — authority model, transports, KataServer |
@kata-framework/cli · 📖 |
kata build, kata watch, kata graph |
@kata-framework/lsp · 📖 |
Language Server Protocol for .kata files |
@kata-framework/test-utils · 📖 |
createTestEngine, StoryTestRunner, collectFrames |
@kata-framework/devtools · 📖 |
In-browser devtools plugin + React overlay |
kata-vscode |
VS Code extension — syntax highlighting, LSP, scene graph |
create-kata-story |
bun create kata-story — project scaffolder |
create-kata-plugin |
bun create kata-plugin — plugin scaffolder |
- Documentation — getting started, guides, API reference, playground
.katafile syntax- KSON protocol
- Plugin catalog
- Multiplayer guide
- Roadmap
- Changelog
This is a Bun workspace monorepo. Use Bun for everything — npm, pnpm, yarn, node, and vite are not supported.
bun install
bun test # run all tests
bun run build # build all packages
bun run changeset # create a changesetSee CLAUDE.md for the full architecture guide and development conventions.
MIT © Purukitto