Stránka: https://www.npmjs.com – vyhľadávanie balíčkov a aj možnosť poslať vlastné moduly po nalogovaní
- npm init
- vytvorí package.json
- npm init –yes
- alternatíva: všetko urobí default
- npm i balíček
- nainštaluje poslednú verziu balíčka do node_modules a doinštaluje aj závislosti
- dopíše závislosť do package.json do
- závislosť v package.json „dependencies“: { „balícek“: „~1.2.3“ }
- semantické verzionovanie major.minor.patch
- ak verzia začína s ^ (caret character) – chceme zachovať major version
- ak verzia začína ~ (tilda character) – chceme zachovať major.minor
- ak zmažeme node_modules tak, môžeme znovu natiahnuť moduly cez npm i, lebo sa závislosti natiahnu podľa package.json
- npm i balíček –save-dev
- inštaluje závislosť, ktorá sa použije iba na vývoj aplikácie, nie pre deployment (v package.json je balíček devDependencies)
- npm un balíček
- odinštaluje balíček
- npm list
- zobrazí všetky moduly aj s verziami
- npm list –depth=0
- zobrazí len moje závislosti, nie celý strom
- npm view balíček
- vypíše package.json z balíčka
- npm view balíček dependencies
- vypíše iba dependency z package.json z balíčka
- npm view mongoose versions
- vypíše všetky predchádzajúce verzie
- npm i balíček@1.2.3
- nanútime danú verziu
- npm outdated
- vypíše nové verzie našich závislostí (wanted podľa ^ a ~ v package verziách)
- npm -g outdated
- vypíše nové verzie pre globálne nainštalované balíčky
- npm update
- nainštaluje najnovšie podľa ^ a ~
- npm i -g npm-check-updates
- globálne nainštalujeme nástroj na hľadanie nových verzií
- npm-check-updates alebo ncu
- vypíše dostupné verzie
- Windows: ak nevie nájsť program, pozrite si, či máte v premenných prostredia PATH cestu %USERPROFILE%\AppData\Roaming\npm
- ncu -u
- updatuje package.json – ešte neinštaluje, doinštalujeme cez npm i
Publikovanie vlastného projektu
- npm adduser
- ak nemáme konto na npmjs
- npm login
- ak už heslo máme
- npm publish
- pošle náš program ako balíček na registry.npmjs.org, náš program musí mať unikátne meno, ktoré ešte nebolo v npm
- ak pridáme novú funkcionalitu, tak pred publikovaním musíme zmeniť verziu jednou z nasledujúcich 4 možností
- poeditujeme package.json
- npm version major # zvysime major verziu x+1.y.z
- npm version minor # zvysime minor verziu x.y+1.z
- npm version patch # zvysime patch verziu x.y.z+1