npm install <module> --save
- install a module and save it as a dependency in package.jsonnpm install <module> --dev
- install a module and save it as a devDependency in package.jsonnpm install <module> -g
install a module globallynpm update <module>
updates a module to latest versionnpm init
- create a package.jsonnpm install
- install all dependencies listed in package.jsonNode Package Manager, installing and managing dependencies.
npm install lodash
npm install async request express
-g
= install globally
--save
= also save it as a dependecy in the package.json file.
It installs the modules in the node_modules
folder in your project directory. If you are using Git, you don’t need to commit this folder, you just need to inslude the package.json
file and the user will be able to install all dependencies on their own computer.
install it with npm install
and then in your code, do:
1var async = require("async");
2var _ = require("lodash");
What we did is use require()
to include the module and saved it as a variable. Now we can call all related functions on the async
keyword.
package.json
file keeps track of all your modules, their version and basic project details. The easiest way to create one is using
npm init
entry point is usually the index file of your project. Node looks into your package.json file to figure out what file it should load.
Even if you init a file after you have already installed some modules, it’ll include all existing modules.
You need a package.json
in order to use --save
. Just a simple file with curly brackets should work.
1{}
~
matches the most recent minor version (middle number). It means approximately equivalent to version version^
matches the most recent major version (first number). It means compatible with version read moreinstall –-save
prepends a caret ^
instead of a tilde ~
There are about a dozen more ways of specifying versions, including but not limited to version
, *
, 1.2.x
, >
, <
, >=
, >=
, http://..
, path/path/path
, range || range
etc.
In the simplest terms, the ~
matches the most recent minor version (the middle number). ~1.2.3
will match all 1.2.x versions but will miss 1.3.0.
The ^
, on the other hand, is more relaxed. It will update you to the most recent major version (the first number). ^1.2.3
will match any 1.x.x release including 1.3.0, but will hold off on 2.0.0.
If you have an existing package.json file, you can run:
1npm install
to install all the dependencies mentioned in that file
When you need project to run things on the command line and not just in your project, for example grunt
or gulp
, you install them globally with the -g
flag
npm install grunt -g
The global installs are for the command line tools. But if you also require it in your project, you need to install it locally in your project as well.
Do a search on http://search.npmjs.org