3. Balíčkovací systém NPM + package.json
Pokud budeme více pracovat s Node.js, nevyhneme se využívání npm. O co vlastně jde? Npm je balíčkovací systém pro JavaScript. Něco podobného má většina současných programovacích jazyků. Díky npm můžeme snadno instalovat a spravovat balíčky v rámci našeho projektu, nebo třeba i sdílet náš vytvořený kód. Jde o součást instalace Node.js, pokud jste již provedli instalaci podle rad z minulých dĺů tutoriálu, npm již máte připravený. Pro ověřený stačí do příkazového řádku zadat příkaz npm, pokud je vše jak má být, odpovědí vám bude výpis seznamu příkazů.Podle statistik je npm jedním z největších balíčkovacích systémů globálně, aktuálně by měl obsahovat téměř 100 tisíc balíčků. Obvykle s npm pracujeme pomocí příkazové řádky, ale všechny balíčky si můžete prohlédnout i přes web na adrese npmjs.org.
Co jsou to vlastně ty balíčky? Balíček (nebo také modul) může být cokoliv, od miniaturního scriptu se třemi řádky až pro kompletní framework. Pro nás je hlavní rozdělení:
- balíčky, které jsou součástí Node.js, ty nemusíme instalovat, máme je rovnou v instalaci samotného Node.js, jejich seznam naleznete v oficiální dokumentaci.
- komunitou vytvořené balíčky, které nainstalujeme ručně až v případě potřeby v projektu.
Nový balíček nainstalujeme velmi jednoduchým příkazem:
npm install nazev_balicku
Balíčky se instalují do adresáře node_modules (sám se vytvoří) v adresáři aktuálního projektu. Je také možné nainstalovat balíček globálně tak, že bude použitelný pro všechny projekty. Pro takovou instalaci musíme přidat parametr -g
npm install nazev_balicku -g
package.json
V reálných projektech se neobejdeme bez souboru package.json. Ten obsahuje základní informace o celém projektu jako název, autora, popis, repozitář. Další důležitou věcí je verze Node.js, na které má projekt fungovat.Obvykle nejobsáhlejší částí jsou pak dependencies, kde se uvádějí další balíčky včetne jejich verze, které projekt využívá (a devDependencies pro balíčky využívané pro vývoj). Pokud si stáhnete takový soubor a spustíte instalaci, všechny tyto balíčky se automaticky nainstalují.
npm install
Pokud nejde o existující projekt, ale teprve ho vytváříme, musíme si soubor sami vytvořit. To můžeme buď ručně, nebo jednodušeji přes příkazovou řádku příkazem
npm init
Npm se nás následně zeptá na několik otázek, které můžeme buď vyplnit, nebo pouze odenterovat a nechat tak výchozí hodnoty. Pokud bychom použili navíc parametr --yes, otázky by se přeskočily a všude vyplnily pouze výchozí hodnoty.
Pokud jste zkusili spustit výše uvedený příkaz a prošli všemi otázkami, vygeneroval se vám soubor se zhruba takovýmto obsahem:
{
"name": "nazev_node_projektu",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"description": ""
}
Vyzkoušeli jsme si základní práci s npm a příště s již zkusíme vytvořit nějaký praktický kousek kódu, kde zužitkujeme všechny v tomto článku uvedené věci.
Další díly tutoriálu
1. Co je to Node.js + instalace2. Hello world!
3. Balíčkovací systém NPM + package.json
4. Co je to REST API
5. REST API: Založení projektu a první endpoint