Node package.json on a front-end project
For a front-end-only project (where everything is compiled into a pure client-side codebase served off a CDN/static server), NodeJS is frequently used to run various build utilities, tests, etc. To help that setup, there is usually an NPM package.json
placed at project root.
That file allows for two kinds of dependencies regular (runtime) and "dev", which are added on top of regular dependencies.
A purist might ask - where do the project module dependencies go?
Well, in the "dev" section. Since a project like this does not have any runtime NodeJS code (it is a pure client-side component, so all the runtime code is browser-based), it can't have runtime dependencies. Simple.
(And yes, that means a giant devDependencies
section with an empty dependencies
hash.)