parchment icon indicating copy to clipboard operation
parchment copied to clipboard

The Interactive Fiction web app

Parchment

Parchment is the Interactive Fiction player for the web. To play a story with Parchment go to https://iplayif.com!

Parchment for Inform 7

Inform 7 includes Parchment, allowing you to produce personal websites for your stories. If you want to update the version of Parchment used by Inform 7, grab parchment-for-inform7.zip and unzip it into the Templates subfolder of your project's Materials folder.

If you would like to make a website like what Inform 7 would produce, but for a pre-existing storyfile, we recommend ifsitegen.py. You can download parchment-for-inform7.zip and pass it with the -i option and it will use the new version instead of the old one bundled with Inform 7:

python3 ifsitegen.py -i parchment-for-inform7.zip Storyfile.ulx

Single File Build

Parchment is also available as a single file, suitable for downloading and using offline. Download it here.

Free Software

Parchment is MIT licensed, and incorporates the following upstream projects:

Name Upstream repo License
AsyncGlk curiousdannii/asyncglk MIT
Bocfel garglk/garglk GPL-2.0/GPL-3.0
Emglken curiousdannii/emglken MIT
Git DavidKinder/Git MIT
GlkOte erkyrath/glkote MIT
Glulxe erkyrath/glulxe MIT
Hugo hugoif/hugo-unix BSD-2-Clause
Iosevka be5invis/Iosevka OFL
jQuery jquery/jquery MIT
Quixe erkyrath/quixe MIT
RemGlk erkyrath/remglk MIT
TADS tads-intfic/tads-runner GPL-2.0
ZVM curiousdannii/ifvms.js MIT

Building Instructions

The upstream projects are included as git submodules. You'll have to start by initializing the submodules, like this:

git submodule update --init --recursive

Then you'll need to install the npm dependencies:

npm install

This will also automatically build Parchment.

Then, you'll need to open index.html on a web server. (It won't work when you run it on your filesystem as a file:/// URL.) You can launch a simple web server like this:

npm start

Then you can view Parchment at http://localhost:8080 to see your handiwork.

Each time you change code in the src folder, the server will automatically rebuild the web code. Refresh to see your changes.

You can also build your own dist/inform/parchment-for-inform7.zip like this:

npm install
npm run inform7