Created for National Novel Generation Month: a computer-generated book evoking the mysterious Voynich Manuscript. The project is an exercise in generative asemic writing.

Seraphs was displayed at MIT Libraries as part of Author Function, a 2018 exhibit and reading series on computer-generated books.

About the project

The Voynich Manuscript is an untranslated (and probably untranslatable) codex written around the 16th century. There have been many, many attempts to decypher the book, though many scholars believe it has no intrinsic meaning and was created as an elaborate fraud.

The original manuscript, held at the Beinecke Library

When executed, Seraphs will output a hoax document of potentially infinite length—a book set an unreadable text, accompanied by unlabeled diagrams and illustrations pulled at random from real historical artifacts.

A free 70-page PDF version is available as seraphs.pdf, or a fully laid out book is available for purchase at cost from Blurb.

Press and coverage

Liza Daly embraced whole hog the nonsense of computer-generated novels by playing with real-life inscrutable Voynich Manuscript - Zachary Littrell, BookRiot (2017)

Featured in a 2015 The Pacific Standard article on generative writing, and in Text by Procedure, a history of computer-generated work.

The result is something that embraces the current limitations of generative processes. Isaac Karth, Procedural Generation (2015)

About the text

Voynich scholars have created several transliterations for the manuscript. I used the EVA transcription, which I converted to a simple list of source words. (After feedback from a real-life scholar, the program was updated to limit starting words to the small set found in the manuscript.)

A two-page spread from Seraphs

The main program slurps up the words, randomizes them, and lays them out in a series of canned templates using Jinja2. I set them in a public domain “Voynich” font.


The original manuscript is heavily illustrated with fantastic sketches of fictional plants, nonexistent cosmological bodies, and a healthy number of naked ladies. The illustrations are grouped thematically. I selected keywords like “botany” and “alchemy” that, insofar as the original makes any sense, correspond to those themes.

I used the Flickr API to access the Internet Archive’s 14 million image collection. Each image is tagged with its original century, which meant that I could select “period” illustrations with any given keyword search. Trial and error landed on the 18th century being the “best” from a purely aesthetic point of view.

Example of flowed text in original Voynich manuscript

As with Voynich, each page has only one image on it; the dimensions and size influence which template is chosen. In the hand-written original, the text flows tightly around the illustrations. It’s possible to do this kind of layout in CSS, using the CSS Shapes specification, but that wasn’t available in my chosen output pipeline, so I went with standard floats.

Page output

There are really no viable open-source implementations of CSS’s support for advanced paged-media, so I used Prince XML, which has a limited free license. Nellie McKessan’s article on A List Apart is still the most accessible reference for producing print-ready HTML files.

Each thematic generates a full-bleed cover with a random Voynich word overlaid as the title. These end up being some of my favorite pages.

Source code

Full source code for the project and more sample pages are available at Github.