shipshit-engine
Installation
SKILL.md
shipshit-engine
The architecture that EVERY studio game shares. Imperative Three.js for the game, React + Tailwind only for the HUD/menu shell. This is the skeleton @shipshitgames/engine will encode; the proof implementation is scourge-survivors (cited throughout). Read those files before writing — match them exactly.
The three pillars
Game— a thin orchestrator. Constructs theGameContext+ theGameSystemsregistry, runs therequestAnimationFrameloop, and exposes the public API by delegating to systems. It holds almost no logic of its own.GameContext— the shared mutable world. Anything touched by more than one system lives here (renderer, scene, camera, controls, clock, raycaster, collision arrays, entity pools, current map, status/outcome). State owned by a single system stays private on that system. Constructed with(container, listener).GameSystems— a registry interface. Each system isnew XSystem(ctx, sys)and calls siblings viathis.sys.<name>. Construction order is irrelevant. The interface uses type-only imports so there is no runtime import cycle.