2022 March Grafana Labs hackathon project. Runs wasm compiled Doom as a Grafana datasource, renders in a timeseries chart.
You can read more about the project here: https://grafana.com/blog/2022/03/31/can-grafana-run-doom/
-
Install dependencies
brew install emscripten automake sdl2 sdl2_mixer sdl2_net pkg-config
The command above is using Homebrew. Use other package managers if needed.
-
Copy doom1.wad to
./doom-wasm/src
. Ensure it is calleddoom1.wad
-
Run the following commands for building Doom:
./doom-wasm/scripts/clean.sh ./doom-wasm/scripts/build.sh
-
Copy the following files to
./src/img
:./doom-wasm/src/doom1.wad
./doom-wasm/src/websockets-doom.wasm
./doom-wasm/src/websockets-doom.wasm.map
-
Install dependencies
yarn install
-
Build plugin in production mode
yarn build
-
Add plugin to your grafana instance by sym-linking project root to Grafana's
data/plugins
folder -
Create a
Doom
datasource in Grafana and note down the ID. It will be needed later.
-
Navigate to
./dashboards/
and pick one of the JSON files -
Replace
datasource-id
with the datasource ID that you obtained from last step in the Datasource instructions -
Import the dashboard in Grafana
-
Enjoy!