Skip to main content

packageManager

Provides an API for intelligently running commands in yarn or npm depending on which is installed.

hasYarn

Whether the current system has yarn installed

toolbox.packageManager.hasYarn() // true

add (async)

Adds a package using yarn or npm

await toolbox.packageManager.add('infinite_red', {
dev: true,
dryRun: false,
force: 'npm', //remove this to have the system determine which
})

Will return an object similar to the following:

{
success: true,
command: 'npm install --save-dev infinite_red',
stdout: ''
}

You can also use an array with the package names you want to install to add it all at once.

await toolbox.packageManager.add(['infinite_red', 'infinite_blue'], {
dev: true,
dryRun: false,

remove (async)

Removes a package using yarn or npm

await toolbox.packageManager.remove('infinite_red', {
dryRun: false,
force: 'npm', //remove this to have the system determine which
})

Like add function, you can also use an array to remove multiple packages.

await toolbox.packageManager.remove(['infinite_red', 'infinite_blue'], {
dryRun: false,
})