Play Doom in PDF
This is a Doom source port that runs inside a PDF file using WebAssembly and PDF embedding. View the source code here: github.com/ading2210/doompdf
How to Build It Yourself
To build this yourself, ensure you have Git, Python 3, and bash installed on your Linux system.
1. Clone the Repository
git clone https://github.com/ading2210/doompdf
cd doompdf
2. Set Up Python Virtual Environment
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt
3. Build the Project
env CFLAGS=-O3 ./build.sh
The build.sh script will automatically download
Emscripten 1.39.20.
Note: This build process only works on Linux.
4. Serve the Output
The output files will be in the out/ directory.
cd out
python3 -m http.server
Open http://localhost:8000/doom.pdf in your browser to
play the game.
Upload Custom WADs
⚠️ Note: The embedded Doom game works only in Chromium-based browsers (Chrome, Brave, Edge, etc.).