Installing a local module using npm?
I have a downloaded module repo, I want to install it locally, not globally in another directory?
What is an easy way to do this?
Solution 1:
you just provide one <folder>
argument to npm install
, argument should point toward the local folder instead of the package name:
npm install /path
Solution 2:
From the npm-link documentation:
In the local module directory:
$ cd ./package-dir
$ npm link
In the directory of the project to use the module:
$ cd ./project-dir
$ npm link package-name
Or in one go using relative paths:
$ cd ./project-dir
$ npm link ../package-dir
This is equivalent to using two commands above under the hood.
Solution 3:
Since asked and answered by the same person, I'll add a npm link as an alternative.
from docs:
This is handy for installing your own stuff, so that you can work on it and test it iteratively without having to continually rebuild.
cd ~/projects/node-bloggy # go into the dir of your main project
npm link ../node-redis # link the dir of your dependency
[Edit] As of NPM 2.0, you can declare local dependencies in package.json
"dependencies": {
"bar": "file:../foo/bar"
}
Solution 4:
npm pack
+ package.json
This is what worked for me:
STEP 1: In module project
, execute npm pack
:
This will build a <package-name>-<version>.tar.gz
file.
STEP 2: Move the file to the consumer project
Ideally you can put all such files in a tmp
folder in your consumer-project
root:
STEP 3: Refer it in your package.json
:
"dependencies": {
"my-package": "file:/./tmp/my-package-1.3.3.tar.gz"
}
STEP 4: Install
the packages:
npm install
or npm i
or yarn
Now, your package would be available in your consumer-project's node_modules
folder.
Good Luck...