This project is a terminal-based Doom application built on top of notcurses. It allows running Doom directly inside a modern terminal with pixel-accurate rendering.
The application focuses on simplicity: a single binary, minimal setup, and a single external dependency.
Runs Doom entirely in the terminal
Minimal build system (Makefile)
No runtime dependencies beyond notcurses and a Doom IWAD
A Unix-like system
A terminal supported by notcurses
notcurses (development headers and runtime, see notcurses)
A Doom IWAD file (e.g. doom.wad, doom1.wad, freeware versions can be found online)
Clone the repository and build the project:
git clone git@github.com:ArnaudValette/doom-notcurses.git
cd doom-notcurses/
makeThis produces the game executable in the repository root.
Usage
Run the game by providing the path to a Doom IWAD file:
./game -iwad <PATH_TO_DOOM_WAD_FILE>Example:
./game -iwad ~/games/doom/doom.wadThe application does not bundle any Doom assets. You must provide your own IWAD.
Terminal capabilities vary; for best results, use a modern terminal known to work well with notcurses.
This project is intended as a technical and experimental terminal application, not a full replacement for graphical Doom ports.

