Database explorer for World of Warcraft servers.
Licensed under the MIT license.
Spelunker exposes data from
world databases as well as
World of Warcraft's own game files through an API. Its web client can be used
to conveniently browse the dataset, similar to Wowhead.
Disclaimer: To deliver game resources – such as icons – to the web client, Spelunker ships with a pipeline serving up resources to the browser over HTTP. Depending on your network configuration these may be available to others. Respect laws and do not distribute game data you do not own.
Be mindful of any privacy sensitive data – such as account and character names – you may expose through Spelunker.
Supported servers and game versions
- Trinity Core - 3.3.5a
Other servers may be supported in the future. Pull requests welcome!
Not yet available via npm, but hopefully soon™!
For now, follow the development instructions below on how to get started.
Clone the repository:
git clone git://github.com/wowserhq/spelunker.git
Download and install Node 10+ – including
npm– for your platform.
(cd packages/spelunker-api && npm install) (cd packages/spelunker-web && npm install)
Install StormLib and BLPConverter, which are used to handle Blizzard's game files.
.envrcand adjust accordingly.
In particular, verify
To configure CORS, specify the allowed origin(s) in
CORS_ALLOWED_ORIGINSas a comma-separated list.
Alternatively, use direnv and allow the changes:
Navigate into the API package:
Run the API server:
To monitor source files and rebuild:
npm run watch
The API will be served on
Navigate into the web client package:
webpack's development server monitors source files and rebuilds:
The web client will be served on
When contributing, please:
- Fork the repository
- Open a pull request (preferably on a separate branch)