npm-autoinit

0.2.0 • Public • Published

npm

npm-autoinit

Build Status Dependency Status

If you miss package.json in the directory npm is working in, it will complain.

$ npm install thingy
…
npm WARN ENOENT ENOENT: no such file or directory, open '/tmp/tmpdir/R3semq/package.json'
npm WARN EPACKAGEJSON /tmp/tmpdir/R3semq No description
npm WARN EPACKAGEJSON /tmp/tmpdir/R3semq No repository field.
npm WARN EPACKAGEJSON /tmp/tmpdir/R3semq No README data
npm WARN EPACKAGEJSON /tmp/tmpdir/R3semq No license field.

Or even:

$ npm ls
…
npm ERR! error in /tmp/tmpdir/R3semq: ENOENT: no such file or directory, open '/tmp/tmpdir/R3semq/package.json'

I often use temporary directories to play/experiment with packages and hustling with package.json every time I want to check out some package is not an option for me.

This module will make npm run npm init --yes automatically for you if it sees fit.

See https://github.com/npm/npm/issues/9161.

How

This package takes advantage of onload-script npm config option.

A node module to require() when npm loads. Useful for programmatic usage.

onload-script executes before any work on npm command is done, so if we create package.json file here (and block while we do it) the problem is solved.

Install

$ npm install -g npm-autoinit

After that, add npm-autoinit/autoinit as npm onload script:

$ npm config set onload-script npm-autoinit/autoinit

API

autoinit(dir, cb(err))

Check if package.json is present, and if it's not run npm init -y.

License

MIT

Package Sidebar

Install

npm i npm-autoinit

Weekly Downloads

13

Version

0.2.0

License

MIT

Last publish

Collaborators

  • eush77