git404hub

what is doom fr?

cloudflare/doom — explained in plain English

Analysis updated 2026-07-25 · repo last pushed 2026-05-27

202JavaScriptAudience · developerComplexity · 3/5MaintainedSetup · moderate

tl;dr

A multiplayer version of the classic game Doom that runs in the browser using WebAssembly and Cloudflare's edge network for real-time networking, no traditional game server required.

vibe map

mindmap
  root((repo))
    What it does
      Multiplayer Doom in browser
      Real-time player sync
      Session room management
    Tech stack
      WebAssembly
      Cloudflare Durable Objects
      WebSockets
      NodeJS for local dev
    How it works
      Website serves game files
      Message router broadcasts actions
      Edge network for low latency
    Use cases
      Browser-based gaming demo
      Edge computing showcase
      Retro game multiplayer
    Audience
      Game developers
      Edge computing enthusiasts
      Tech demo explorers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Play multiplayer Doom in a browser with friends over the internet.

VIBE 2

Learn how to build real-time multiplayer games using serverless edge computing.

VIBE 3

Experiment with WebSockets and Durable Objects for low-latency state synchronization.

VIBE 4

Run a local development version of the multiplayer router using NodeJS.

what's the stack?

JavaScriptWebAssemblyWebSocketsCloudflare Durable ObjectsNodeJS

how it stacks up fr

cloudflare/doomvercel/git-hooksleonxlnx/lumenshaders
Stars202202203
LanguageJavaScriptJavaScriptJavaScript
Last pushed2026-05-272021-04-10
MaintenanceMaintainedDormant
Setup difficultymoderateeasyeasy
Complexity3/52/51/5
Audiencedeveloperdeveloperdesigner

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Requires a Cloudflare account with Durable Objects enabled, though a NodeJS-based local router is available for development without Cloudflare.

No license information is provided in the repository, so usage rights are unspecified and default restrictions may apply.

in plain english

This repo powers a multiplayer version of the classic game Doom that runs entirely on Cloudflare's edge network. The public showcase lives at silentspacemarine.com, where players can join Doom game sessions in their browser and play together over the internet without any dedicated game server in the traditional sense. The project has two main pieces. The first is a website that serves the game itself, the Doom game files, the web-based player interface, and everything a visitor needs to load and play in their browser. The second piece is a "message router" that handles the real-time networking between players. When a player moves or shoots, that action gets sent to the router, which then broadcasts it to everyone else in the same game room so their screens stay in sync. The router also manages creating and validating game sessions, so players can join specific rooms. The technical approach is interesting because it runs Doom, a game from 1993, as a WebAssembly application in the browser, and uses Cloudflare's serverless infrastructure for the multiplayer networking instead of a conventional game server. The router uses WebSockets for real-time communication and Cloudflare's Durable Objects to maintain shared state across connections. This means the multiplayer experience is hosted on Cloudflare's global edge network, putting the game logic geographically close to players rather than routing everything through a single central server. Someone interested in browser-based gaming, edge computing demos, or retrofitting classic games for modern web multiplayer would find this useful. It's a tech demo rather than a production game platform, but it's a concrete example of how low-latency multiplayer can work without traditional server infrastructure. The project also includes a way to run everything locally for development using a NodeJS-based router instead of Cloudflare's services.

prompts (copy fr)

prompt 1
Help me set up the cloudflare/doom project locally, I want to run the NodeJS-based router instead of deploying to Cloudflare so I can test multiplayer in my browser.
prompt 2
I want to deploy cloudflare/doom to my own Cloudflare account. Walk me through configuring Durable Objects and deploying the website and message router.
prompt 3
Explain how the cloudflare/doom message router uses WebSockets and Durable Objects to keep players in sync, and help me adapt that pattern for my own browser-based multiplayer game.
prompt 4
I want to modify cloudflare/doom to support more than one game room at a time. Help me understand how sessions are created and how players join specific rooms.
prompt 5
Help me replace the Doom game files in cloudflare/doom with a different WebAssembly game while keeping the multiplayer router and session management intact.

Frequently asked questions

what is doom fr?

A multiplayer version of the classic game Doom that runs in the browser using WebAssembly and Cloudflare's edge network for real-time networking, no traditional game server required.

What language is doom written in?

Mainly JavaScript. The stack also includes JavaScript, WebAssembly, WebSockets.

Is doom actively maintained?

Maintained — commit in last 6 months (last push 2026-05-27).

What license does doom use?

No license information is provided in the repository, so usage rights are unspecified and default restrictions may apply.

How hard is doom to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is doom for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.