Crockpot

Crockpot

Written in TypeScript, Crockpot is essentially an in-memory graph database specifically made for game development. By structuring game logic as systems that act on a world of nodes and edges, you can achieve a high level of composability.

In this regard, it fills much of the same niche as an Entity Component System (ECS), though admittedly without the same cache-friendly data layouts that many ECS libraries have (yet!). In comparison to an ECS though, Crockpot dispenses with the concept of an “entity” and takes an entirely graph-first approach to the same problem, which I believe makes both querying and reasoning about the data more intuitive.

Crockpot features a powerful graph querying API, entirely type-safe thanks to a mountain of TypeScript.

The initial idea for Crockpot was heavily inspired by the articles of Sander Mertens, especially Why it is time to start thinking of games as databases and Building Games in ECS with Entity Relationships.

I have lots more to say about Crockpot, but for now I will wait until I have finished version 2.0. Keep and eye on the blog though!