get-installed-path !npm versionnpmv-imgnpmv-url !github releasegithub-release-imggithub-release-url !mit Licenselicense-imglicense-url !NPM Downloads Totaldownloads-total-imgnpmv-url
Get installation path where the given package is installed. Works for globally and locally installed packages
You might also be interested in detect-installed.
Quality Assurance :100:
!Code Climatecodeclimate-imgcodeclimate-url !Code Style Standardstandard-imgstandard-url !Linux Buildtravis-imgtravis-url !Code Coveragecodecov-imgcodecov-url !Dependencies Statusdependencies-imgdependencies-url !Renovate App Statusrenovate-imgrenovate-url !Node Version Requirednodeversion-imgnodeversion-urlIf you have any how-to kind of questions, please read Code of Conduct and join the chat room or open an issueopen-issue-url.
You may also read the Contributing Guide. There, beside "How to contribute?", we describe everything stated by the badges.
!tunnckoCore supportchat-imgchat-url !Code Format Prettierprettier-imgprettier-url !Node Security Statusnodesecurity-imgnodesecurity-url !Conventional Commitsccommits-imgccommits-url !Semantic Releasesemantic-release-imgsemantic-release-url !First Timers Onlyfirst-timers-only-imgfirst-timers-only-url
!All Contributors Specall-contributors-img !Make A Pull Requestprs-welcome-imgprs-welcome-url !Newsletter Subscribetinyletter-imgtinyletter-url !PayPal Author Supportpaypal-donate-imgpaypal-donate-url !Share Loveshare-love-imgshare-love-url !BitHound Codebithound-code-imgbithound-code-url
Table of Contents
getInstalledPath getInstalledPathSync(TOC generated by verb using markdown-toc)
Install
This project requires Node.jsnodeversion-url v6 and above. Use yarn v1 / npm v5 or above to install it.$ yarn add get-installed-path
API
Review carefully the provided examples and the working tests.getInstalledPath
Get installed path of globally or locally name
package.
By default it checks if name
exists as directory in global-modules
directory of the system. Pass opts.local
to get path of name
package from local directory or from opts.cwd
. Returns rejected
promise if module not found in global/local node_modules
folder or
if it exist but is not a directory.Params
name
{string}: package nameopts
{Object}: passopts.local
to check locallyreturns
{Promise}: rejected promise ifname
not a string or is empty string
Example
const { getInstalledPath } = require('get-installed-path')
getInstalledPath('npm').then((path) => {
console.log(path)
// => '/home/charlike/.nvm/path/to/lib/node_modules/npm'
})
getInstalledPath('foo-bar-barwerwlekrjw').catch((err) => {
console.log(err.message)
// => 'module not found "foo-bar-barwerwlekrjw" in path ...'
})
getInstalledPath('npm', {
local: true
}).catch((err) => {
console.log(err.message)
// => 'module not found "foo-bar-barwerwlekrjw" in path ...'
})
getInstalledPath('global-modules', {
local: true
}).then((path) => {
console.log(path)
// => '~/code/get-installed-path/node_modules/global-modules'
})
// If you are using it for some sub-directory
// pass `opts.cwd` to be where the `node_modules`
// folder is.
process.chidr('foo-bar-baz')
getInstalledPath('global-modules', {
local: true,
cwd: '../'
}).then((path) => {
console.log(path)
// => '~/code/get-installed-path/node_modules/global-modules'
})
// When searching for the path of a package that is required
// by several other packages, its path may not be in the
// closest node_modules. In this case, to search recursively,
// you can use the following:
getInstalledPath('npm', {
paths: process.mainModule.paths
}).then((path) => {
// ...
})
// `process.mainModule` refers to the location of the current
// entry script.
getInstalledPathSync
Get installed path of a name
package synchronous.
Returns boolean
when paths
option is used and filepath is directory,
otherwise returns a full filepath OR throws error.Params
name
{string}: package nameopts
{Object}: passopts.local
to check locallyreturns
{string}: The full filepath or throwTypeError
ifname
not a string or is empty string
Example
const { getInstalledPathSync } = require('get-installed-path')
const npmPath = getInstalledPathSync('npm')
console.log(npmPath)
// => '/home/charlike/.nvm/path/to/lib/node_modules/npm'
const gmPath = getInstalledPathSync('global-modules', { local: true })
console.log(gmPath)
// => '~/code/get-installed-path/node_modules/global-modules'
back to top
Related
- always-done: Handle completion and errors with elegance! Support for streams, callbacks, promises, child… more | homepage
- detect-installed: Checks that given package is installed globally or locally. | homepage
- global-modules: The directory used by npm for globally installed npm modules. | homepage
- global-paths: Returns an array of unique "global" directories based on the user's platform… more | homepage
- global-prefix: Get the npm global path prefix. | homepage
- is-installed: Checks that given package is installed locally or globally. Useful for robust… more | homepage
- minibase: Minimalist alternative for Base. Build complex APIs with small units called plugins… more | homepage
- try-catch-core: Low-level package to handle completion and errors of sync or asynchronous functions… more | homepage
back to top
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issueopen-issue-url.Please read the Contributing Guide and Code of Conduct documents for advices.
Author
License
Copyright © 2016-2017, Charlike Mike Reagent. Released under the MIT License.This file was generated by verb-generate-readme, v0.6.0, on October 12, 2017.
Project scaffolded and managed with hela.