Naivete Precedes Misrepresentation

    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

    Install

    npm i npm-autoinit

    DownloadsWeekly Downloads

    4

    Version

    0.2.0

    License

    MIT

    Last publish

    Collaborators

    • eush77