Get your PATH prepended with locally installed binaries
MIT License
Get your PATH prepended with locally installed binaries
In npm run scripts you can execute locally installed binaries by name. This enables the same outside npm.
npm install npm-run-path
import childProcess from 'node:child_process';
import {npmRunPath, npmRunPathEnv} from 'npm-run-path';
console.log(process.env.PATH);
//=> '/usr/local/bin'
console.log(npmRunPath());
//=> '/Users/sindresorhus/dev/foo/node_modules/.bin:/Users/sindresorhus/dev/node_modules/.bin:/Users/sindresorhus/node_modules/.bin:/Users/node_modules/.bin:/node_modules/.bin:/usr/local/bin'
// `foo` is a locally installed binary
childProcess.execFileSync('foo', {
env: npmRunPathEnv()
});
options
: Options
Returns: string
Returns the augmented PATH string.
options
: Options
Returns: object
Returns the augmented process.env
object.
Type: object
Type: string | URL
Default: process.cwd()
The working directory.
Type: string | URL
Default: process.execPath
The path to the current Node.js executable.
This can be either an absolute path or a path relative to the cwd
option.
Type: boolean
Default: true
Whether to push the current Node.js executable's directory (execPath
option) to the front of PATH.
Type: boolean
Default: true
Whether to push the locally installed binaries' directory to the front of PATH.
Type: string
Default: PATH
The PATH to be appended.
Set it to an empty string to exclude the default PATH.
Only available with npmRunPath()
, not npmRunPathEnv()
.
Type: object
Default: process.env
Accepts an object of environment variables, like process.env
, and modifies the PATH using the correct PATH key. Use this if you're modifying the PATH for use in the child_process
options.
Only available with npmRunPathEnv()
, not npmRunPath()
.