HTML-in-Canvas lets web content run inside DOOM

We have seen Doom run on lawn mowers , pregnancy tests, vapes and even inside a PDF file. Now someone has tried something different, putting web elements inside Doom. That is not exactly the goal of the project, but X user Robin is showing a Chrome preview feature called HTML-in-Canvas.
A new browser demo shows HTML content rendered directly inside a running copy of Doom. It uses a WebAssembly version of the original game engine to turn live DOM elements into in-game wall textures. So instead of running Doom in HTML, it is doing the reverse and pushing HTML into Doom.
As you can see, I tried it out, but password managers were not helpful here at all. It even blocked Doom Guy’s movement at some point, but this proved that a real HTML form was shown.
HTML can't run Doom
But HTML can now run *inside* Doom! Thanks to HTML-in-Canvas!
Fully accessible DOM elements drawn into Doom's own wall textures. This demo uses a WebAssembly port (jacobenget/doom.wasm) of the original C source.
See it in action at https://t.co/ossFpEizYq … pic.twitter.com/xmj6dbfBZK
— Robin (@solarise_webdev) April 9, 2026
The project uses an experimental browser feature that lets DOM elements be drawn into a `<canvas>` as pixel data. In this case, the demo runs `doom.wasm` in the browser, grabs the HTML content on each game tick, converts it to Doom’s 256-color palette, and writes it into the game’s texture cache. Doom then renders it like any other wall texture, with lighting, perspective warp, and even the red damage tint.
To test set Chrme flag to ‘enable’
Chrome://flags/#canvas-draw-element
It shows a different way to mix web UI with real-time graphics. Instead of sitting on top of the scene, HTML becomes part of it. For now, it is still experimental, limited to Chrome flags, and not ready for wider use.
So who knows, maybe in a few years you will read VideoCardz in a 3D browser while playing a game?
Source: Doom HTML in Canvas demo