gaia-ecs

Installation
SKILL.md

Entity Component System

We use EliCS, a lightweight, high-performance Entity Component System framework for TypeScript. It uses a data-oriented design that prioritizes composition over inheritance, with efficient bitmasking and typed array storage.

Core concepts: Entities (unique objects), Components (data containers), Systems (logic processors), Queries (entity selectors), and World (the container managing everything).

Recommended Architecture

Use 3 layers: Input, State, and View.

  • mapping Input to State (Input Systems: receive user input, normalize it, and apply it to State. Complex inputs can be split across multiple systems (e.g., raw events → normalized actions → state updates). Each input system must provide methods to imperatively invoke all inputs enabling simulating and testing user input programmatically.)
  • advancing State each frame (State Systems: advance the game state every frame (e.g., enemies chasing the player).)
  • synchronizing State to the View (View Systems: reflect State in the View. Subscribe during initialization to entity creation/removal when needed (e.g., to create/destroy 3D objects or UI), and update frequently changing data each frame.)

Recommended File Structure

Installs
1
First Seen
Jun 17, 2026
gaia-ecs — drawcall-ai/skills