I've been using Python for a while and I've learned we should always use a virtual env for each project where we pip install <name>
the packages as needed, etc
I'm new to JS but would downloading packages using npm install <name>
without the -g
option mean it will only download it in the specific project directory, similarly to how Python's virtual env is keeping the pip packages separate? or is there also some sort of virtual env that needs to be created?
Sorry if I'm misunderstanding anything here... just want to make sure that installing packages using npm install
isn't going to mess w/ anything globally or something!
Node installs
npm install <pkg>
npm install -g <pkg>
Python installs
. <envName>/bin/activate
then pip install <pkg>
pip install <pkg>
Node usage
npm start
(w/ path to binary specified in package.json e.g. "start":"./node_modules/.bin/<pkg>"
)<pkg> <cmd>
Python usage
. <envName>/bin/activate
then <pkg> <cmd>
<pkg> <cmd>
main takeaway: once you activate virtualenv you don't have to worry about package commands slipping into global scope
NVM: way to specifiy Node version using .nvmrc
file in project root
Correct, installing packages via npm install <package>
installs them only for the specific project, by default in a folder node_modules
in the project root.
npm install --global <package>
installs a package globally.
See the npm docs for more info.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With