dead-jim
v0.1.0-alpha.1
Published
TypeScript bridge/runtime for bringing SkelForm-authored 2D skeletal animation into Phaser 4.
Maintainers
Readme
Dead Jim
Dead Jim is an open-source TypeScript bridge/runtime for bringing SkelForm-authored 2D skeletal animation into Phaser 4.
Bones: "He's dead, Jim."
The reference pipeline is:
SkelForm authoring
↓
Dead Jim source adapter
↓
normalized skeletal runtime
↓
Phaser 4 renderer adapterWhy Dead Jim?
SkelForm provides a free and open-source 2D skeletal-animation authoring workflow. Phaser is a mature, MIT-licensed HTML5 game framework. Dead Jim bridges those worlds with a small, explicit TypeScript runtime layer rather than requiring a proprietary skeletal-animation runtime.
Dead Jim is an independent community project maintained by Curadh Creative / Wolris. It is not an official SkelForm or Phaser project.
Current status
Phase 1 complete / pre-release.
The completed Phase 1 runtime discriminator proves:
- SkelForm v0.7.2 source import through an isolated adapter;
- normalized bones, transforms, sprite attachments, and animation clips;
- renderer-independent pose evaluation;
- deterministic clip playback and looping;
- modular attachment/style swapping;
- deterministic two-pose blending;
- Phaser 4.2.1 rendering through an adapter;
- a public browser sandbox exercising the complete path.
The library distribution boundary is also validated: Dead Jim emits ESM JavaScript and TypeScript declarations, packs an intentional file set, and installs/imports successfully in a clean consumer smoke test.
Dead Jim is not published yet. The first public pre-release [email protected] is authorized and in release preparation; tagging and publication remain behind the final release-preparation merge boundary.
Advanced mesh deformation, IK, physics, state machines, multiple adapters, and a custom animation editor remain deliberately deferred until real runtime evidence requires them.
Repository structure
assets/— public project artwork and repository assetsexamples/phase1/— self-contained browser sandbox for the Phase 1 runtime pathdocs/DESIGN_BIBLE.md— public product principles and scopedocs/architecture/— architecture decision recordsdocs/roadmap/— active execution lock, process, and backlogdocs/THIRD_PARTY.md— upstream projects and license boundariesdocs/RELEASE_POLICY.md— pre-release versioning and release-note policyCHANGELOG.md— canonical public release notesAGENTS.md— repository rules for AI-assisted developmentsrc/— runtime implementationtests/— deterministic runtime/import/renderer testsscripts/— package/build validation helpersvalidate.cmd— Windows validation entrypoint
Phase 1 browser demo
From the repository root:
npm install
npm run demo:devPASS when the arm keeps animating, the blend slider changes the motion continuously, and the style button swaps cyan/magenta attachments without interrupting playback.
Library artifact validation
Build the emitted ESM library and declarations:
npm run build:libValidate the package boundary without publishing:
npm run package:checkThat command builds the library, packs it locally, verifies the packed contents, installs the tarball into a clean temporary consumer, imports representative runtime APIs, and typechecks representative public types. It does not publish the package.
Validation
On Windows:
validate.cmdOr directly with npm:
npm install
npm run validateFull validation covers typechecking, 45 deterministic tests, the Phase 1 production demo build, and the package consumer smoke path.
Licensing
Dead Jim software and documentation are released under the MIT License. See LICENSE.
Important upstream boundaries:
- SkelForm editor — GPL-3.0; used as an external authoring tool and format target, not copied into Dead Jim.
- skelform-js — MIT; useful upstream/reference runtime for interoperability.
- Phaser — MIT; the first renderer target and a peer dependency for the Phaser adapter.
Project artwork and branding are not granted under the MIT software license. See assets/README.md.
See docs/THIRD_PARTY.md for upstream license details.
Contributing
Contributions are welcome. Please read CONTRIBUTING.md before opening a pull request.
