This repository hosts open-source (BSD 3-clause) subprojects from Leaves of Three Games. Most of these originated with A World Like this One (AWLTO) but have since been split into separate projects. The subprojects hosted here consists of some tools and some libraries.
Tools:
ansi-codes -- A simple Python script which prints copy/paste-able representations of ANSI terminal control codes to stdout.
JSONify -- Despite the name, a general-purpose tool for parsing C++ source files and generating reflection templates from them. Written in Python, using the Clang-cindex Python bindings (included).
Pixel Robot -- A JavasScript environment for creating procedural pixel art images and animations.
Libraries:
Sinker -- A simple C++ assertion and logging library.
QJSPP -- C++ bindings and convenience functions for Fabrice Bellard's QuickJS.
ECM -- "Entities, Components, and Messages"; a framework for building classes which support dynamic multiple inheritance.
pixel_window -- An SFML library for creating and drawing to a low-res, paletted backbuffer, which is then rendered to the actual window/screen (always with integer scaling). Also manages input, the event loop, building a texture atlas, and some other stuff. Uses Glatter (included) to wrangle OpenGL.
pixel_ui -- An immediate-mode GUI library built on the above.
lib_demiurge -- A very incomplete library for procedural generation, in the context of Roguelikes.
We rely on the following libraries, all of which are included: