Self-hosted  ·  Open source  ·  Docker Compose

AIFSTUDIO

Interactive Fiction, your way

Discover, play, and author Interactive Fiction — all in your browser, on your own server. Z-machine, Glulx, and TADS out of the box. Inform 7 authoring with AI assistance.

[ DEPLOY NOW ] [ VIEW SOURCE ]
──────────────────────────────────────────────────────────────────────────────
> CAPABILITIES
Everything you need to run IF

A complete platform for interactive fiction — from browsing the IFDB catalogue to compiling your own Inform 7 stories, all running on your own hardware.

IFDB Catalogue
Browse thousands of published IF titles from the Interactive Fiction Database, filtered to formats your server can run.
Play in the Browser
Z-machine (.z3–.z8, .zblorb), Glulx (.ulx, .gblorb), and TADS 2/3 (.gam, .t3) via dfrotz, glulxe, and frob.
Durable Sessions
Save files and transcripts persisted to local storage. Resume any game in under 200 ms — even after container restarts.
Inform 7 Authoring
Create Inform 7 projects, compile on the server, and play your own builds immediately — no local toolchain needed.
AI Workspace
Write and iterate on Inform 7 source with an AI assistant. Generate story text, puzzle logic, and room descriptions.
Voice I/O
Optional Web Speech API integration. TTS reads interpreter output; STT captures commands hands-free. Toggles persist per browser.
Multi-User
Local session auth with bcrypt passwords. Each user has their own run history, projects, and save files.
Zero Cloud Dependencies
SQLite for metadata. Local filesystem for storage. No GCP, no Firebase, no S3. Runs on any machine with Docker.
Community Builds
Share compiled stories with other users on the same instance. Browse and play what others have authored.
──────────────────────────────────────────────────────────────────
> SUPPORTED FORMATS
Broad format support

Powered by the most widely-used open-source IF interpreters. If IFDB knows about it and it runs on one of these engines, AIFStudio can play it.

.z3 / .z4 / .z5
.z6 / .z7 / .z8
.zblorb
.ulx
.gblorb
.gam (TADS 2)
.t3 (TADS 3)
Inform 7 source
──────────────────────────────────────────────────────────────────
> SCREENSHOTS
See it in action
IFDB Game Catalogue — search results showing Zork titles with cover art

IFDB Catalogue

Browse thousands of published Interactive Fiction titles. Filter by genre, author, or format. One click to start playing.

Zork I game detail page with cover art and Play Game button

Game Detail

Cover art, author info, rating, and a direct Play button. No setup, no downloads — the interpreter runs server-side.

Playing Zork I in the browser — terminal interface showing game output

Play in the Browser

A faithful terminal-style interface for the classic IF experience. Full keyboard control, save/restore, and transcript download.

My Games history page showing Zork I session with Continue button

Game History

Every session is saved. Pick up exactly where you left off — continue, restart, or delete any game from your history.

SCREENSHOT PLACEHOLDER
INFORM 7 AI WORKSPACE

AI Authoring Workspace

Write Inform 7 source with AI assistance. Compile and play your story without leaving the browser.

──────────────────────────────────────────────────────────────────
> DEPLOYMENT
Up in four commands

AIFStudio ships as a single Docker image. All you need is Docker Compose.

01

Clone and configure

Copy the example config and set your OpenAI key if you want AI features.

git clone https://github.com/vpoluyaktov/aifstudio.git
cd aifstudio
cp .env.example .env
# edit .env — set OPENAI_API_KEY
02

Create data directories

SQLite and file storage live on the host so data survives container updates.

mkdir -p data/db data/storage
sudo chown -R 999:999 data/
03

Start the service

docker compose up -d
04

Open and register

Navigate to the app, create your account, and start playing.

http://localhost:9901/register
TO UPDATE
docker compose pull && docker compose up -d
──────────────────────────────────────────────────────────────────