textual-engine is an engine for text adventures, both interactive fiction and procedural dungeon crawlers.
It uses an event and service architecture, with support for local scripted and remote server events. The interface is powered by React, using the DOM in browsers and Ink on the CLI.
textual-engine should be considered a beta release. There are a bunch more features that I would like to add, but the core functionality is in place, and the service-oriented architecture is not likely to change any time soon.
There are a few example worlds available in the demo on Github Pages.
Worlds are written as a series of rooms, with portals connecting them. Rooms and their contents can be randomized or
fixed ahead of time, allowing for both ever-expanding procedural maps and carefully designed narratives. Data for the
example worlds can be found in