{"_id":"@achil/npm-programmatic","_rev":"1-b2a5c51411df8cc69821c0f6d788374c","name":"@achil/npm-programmatic","dist-tags":{"latest":"0.0.12"},"versions":{"0.0.12":{"name":"@achil/npm-programmatic","version":"0.0.12","description":"Use NPM commands programmatically","main":"index.js","scripts":{"test":"mocha --recursive ./test/**/*.test.js"},"repository":{"type":"git","url":"git+https://github.com/Manak/npm-programmatic.git"},"keywords":["NPM","Programmatic","npm","programmatic"],"author":{"name":"manak"},"license":"ISC","bugs":{"url":"https://github.com/Manak/npm-programmatic/issues"},"homepage":"https://github.com/Manak/npm-programmatic#readme","devDependencies":{"mocha":"^2.5.3","should":"^9.0.2"},"gitHead":"b37c3fc31b620e7086a137253b1317f5934dc31e","_id":"@achil/npm-programmatic@0.0.12","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-mxzW2jCFKxC2vQtPd0M1AqKqMAdEN0WH4YawrTfACEnsekrA7B68uOA7KAPqilJZW54zIUF0agVDvbsxk9/QDw==","shasum":"672415bc058b9d63dc3af368b00879f1dea2dd55","tarball":"https://registry.npmjs.org/@achil/npm-programmatic/-/npm-programmatic-0.0.12.tgz","fileCount":7,"unpackedSize":9467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdQZ9FCRA9TVsSAnZWagAAOpsP/jkyNCtqfMbU3wD4HKZs\nQ6taKmkz0+lJ3TkpWh193MZHNaezO95i+wc2vk/OZrCLPD1MT9FQ83zmjGUi\nqQNoDgBv8ZZcVEJLV6vk2W7JoE8W2udWMzbZ8lgLp91CcWN66aApQoJDeafc\naT3Rh6QzNiUKwAk23FG/3L2/bRSADO4NEZlzIdR7XgX4x8LQ7ciywaJo9jtT\nLA8FKF5oVjuLFZJVkfLxEaw3cG7HQfY/6G8/7R60tlJSP2z+nXnsXA5+Zylh\nSZXMs37yWxTSwm9KAE/xPhRnX3c2QT5UHJXyV2PE3gBpwZ4Jnxh+rnTojbHf\n6rGCWNfqmkmLPgctFh3J6ccFoyLouYoF+cv4OjbL1ZvA5+OQDk5dwZ4TgxSi\ndWugiGeHPFmTlFrf0zhqvRKE/QetaQZB1QLHn8KIFFN+uNLTMnbvFYXTlvC0\ncynQ2/0CjkgWKMt2zAU9kbuIBdK1UaYIHFMYas9M8oktKIonUIaoJDA4JJVs\ngD4vOnDUQfc4ghI7V5DUhyObdFiwNj7AinbzRHMg6Ez6QiVfA2EscmuM2FIj\ni3MCrZCp+1VtKxn4ay5PfFjFJWKMEh8/nRpi8rrBiK8hnJLJ8zKl3cAUqkTm\n35j+R4b+tKgs0P0MJOK6j3ChoMPsJCoHE3Kcrwigds1xaeBCVzw5jwmkp77A\nsZGZ\r\n=kh1t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMHI16Ubey4zG+uAC+pcl+WYuReRvpP2y5f8nFY8pDOgIhAOVHpnm5A+tlZeSUWPCTYH2CD37A+XCZfc7z80IzaSo5"}]},"maintainers":[{"name":"achil","email":"akiritsakas@gmail.com"}],"_npmUser":{"name":"achil","email":"akiritsakas@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/npm-programmatic_0.0.12_1564581701228_0.18027603691353744"},"_hasShrinkwrap":false}},"time":{"created":"2019-07-31T14:01:41.018Z","0.0.12":"2019-07-31T14:01:41.375Z","modified":"2022-04-04T11:10:56.271Z"},"maintainers":[{"name":"achil","email":"akiritsakas@gmail.com"}],"description":"Use NPM commands programmatically","homepage":"https://github.com/Manak/npm-programmatic#readme","keywords":["NPM","Programmatic","npm","programmatic"],"repository":{"type":"git","url":"git+https://github.com/Manak/npm-programmatic.git"},"author":{"name":"manak"},"bugs":{"url":"https://github.com/Manak/npm-programmatic/issues"},"license":"ISC","readme":"# npm-programmatic [![Build Status](https://travis-ci.org/Manak/npm-programmatic.svg?branch=master)](https://travis-ci.org/Manak/npm-programmatic)   \n[![NPM](https://nodei.co/npm/npm-programmatic.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/npm-programmatic/)    \n\nnpm-programmatic is a library that allows you to access npm commands programmatically from javascript\n## Usage\nEvery function returns a Bluebird promise.   \nCWD refers to current working directory, allowing you to ensure the command executes in a certain folder in the filesystem.\nIf output is set, the output of npm will be shown in the console.\n\n## Installation of Packages\n\n``` \n    npm.install(packages, opts).then(function)\n```\n| Name        | Type           | Value  |\n| ------------- |:-------------:| -----:|\n| packages      | Array      |   packages to be installed |\n| opts      | Object | save:true/false; global:true/false; cwd:string; saveDev:true/false; noOptional:true/false; legacyBundling: true/false; output:true/false|\n\n### Example\n``` \n    var npm = require('npm-programmatic');\n    npm.install(['left-pad'], {\n        cwd:'/path/to/my/project',\n        save:true\n    })\n    .then(function(){\n        console.log(\"SUCCESS!!!\");\n    })\n    .catch(function(){\n        console.log(\"Unable to install package\");\n    });\n```\n\n## Unistallation of Packages\n\n``` \n    npm.uninstall(packages, opts).then(function)\n```\n| Name        | Type           | Value  |\n| ------------- |:-------------:| -----:|\n| packages      | Array      |   packages to be uninstalled |\n| opts      | Object | save:true/false; global:true/false; cwd:string; saveDev:true/false; output:true/false|\n\n### Example\n``` \n    var npm = require('npm-programmatic');\n    npm.uninstall(['left-pad'], {\n        cwd:'/path/to/my/project',\n        save:true\n    })\n    .then(function(){\n        console.log(\"SUCCESS!!!\");\n    })\n    .catch(function(){\n        console.log(\"Unable to uninstall package\");\n    });\n```\n\n\n## List Installed Packages\n\n``` \n    npm.list(path).then(function)\n```\n| Name        | Type           | Value  |\n| ------------- |:-------------:| -----:|\n| path      | String      |   path at which to look |\n\n### Example\n``` \n    var npm = require('npm-programmatic');\n    npm.list('/path/to/project')\n    .then(function(arrayOfPackages){\n        console.log(arrayOfPackages);\n    })\n    .catch(function(){\n        console.log(\"Unable to uninstall package\");\n    });\n```\n\n## Tests\ninstall mocha and dev dependencies. Then run \n``` npm test    ```\n","readmeFilename":"README.md"}