Environment requirements
The Node.js, npm, Git and network baseline every MDK guide assumes, and why npm stays below 12
Overview
Every guide and tutorial in this repo assumes the same baseline; this page explains the npm ceiling. Runtime environment variables
are documented by the package that reads them: the worker.js variables in the core SDK README, and the full set a
managed site touches in the hosted-site settings table.
Requirements
- Node.js >=24 (LTS)
- npm 11 (< 12)
- Git (latest stable version)
- Outbound UDP to the HyperDHT bootstrap nodes, the public set on port
49737by default or your own private list, because HRPC runs over HyperDHT in every deployment shape, even on one host. A network that blocks this traffic hangs before the Kernel key is printed.
Across hosts (the DHT discovery shape), the backend hosts also need hole-punched UDP to each other, as the hosted-site port table lays out.
Check the installed npm version with npm --version.
Why npm stays below 12
npm 12 disables fetching git-based dependencies by default and fails with EALLOWGIT:
npm error code EALLOWGIT
npm error Fetching packages of type "git" have been disabledexamples/mvp-site takes several third-party Workers as git dependencies, each pinned to a commit in a
vendor-controlled repository. Its package.json carries the current set.
On npm 12, npm install fails on the first of these before it reaches anything else. The ceiling lifts only once every
one of them resolves from the registry, so it is not a single pending fix.
If npm --version already reports 12 or higher, repin with:
npm install -g npm@11