Frontispiece is an interactive fiction engine written in Typescript that interacts with the Ink markup language to make it easier to make Ink games work on the web.

It contains a series of tools to convert the very class-and-state based Ink engine into immutable objects that can be consumed by frontend frameworks like React, as well as utilities to work with the Phaser game engine to bring those stories to life.

Source Code

Games made with Frontispiece

The Weight of 100 Years - Revue Starlight fanfiction. So far, I’ve only used Frontispiece to write fanfiction! If you’re into Revue Starlight (and/or its spinoff gacha game of questionable quality) you might enjoy reading this. If not, it probably won’t make any sense.

Other materials

I gave a talk about some of the core concepts and architecture of Frontispiece, as well as some of the writing (read: fanfiction) I made with it.