---
title: "npm"
description: "npm to menedżer pakietów dla Node.js i największe repozytorium bibliotek JavaScript. Poznaj package.json, zależności i różnice między npm, yarn i pnpm."
url: "https://nodea.pl/pl/slownik-pojec/npm"
lang: "pl"
updated: "2026-07-13"
---

# npm

> npm (Node Package Manager) to domyślny menedżer pakietów środowiska Node.js oraz największe na świecie repozytorium bibliotek JavaScript. Zarządza zależnościami projektu na podstawie pliku package.json.

**npm** (Node Package Manager) to domyślny menedżer pakietów dla środowiska [Node.js](https://nodea.pl/pl/slownik-pojec/node-js) oraz największe na świecie repozytorium otwartoźródłowych bibliotek [JavaScript](https://nodea.pl/pl/slownik-pojec/javascript). Umożliwia instalowanie, aktualizowanie i publikowanie paczek kodu, a także zarządzanie zależnościami projektu. Dla większości aplikacji webowych i narzędzi frontendowych jest to element codziennego warsztatu programisty.

## Jak działa npm?

Serce projektu opartego na npm stanowi plik **package.json**, który opisuje aplikację i wymienia jej zależności wraz z akceptowalnymi zakresami wersji. Polecenie *npm install* odczytuje ten plik, pobiera z rejestru wszystkie potrzebne pakiety (oraz ich zależności) i umieszcza je w katalogu *node\_modules*. Powstaje przy tym plik *package-lock.json*, który zapisuje dokładne wersje, aby instalacja była powtarzalna na każdej maszynie i w każdym środowisku.

Poza instalacją npm pełni też rolę uruchamiacza skryptów — sekcja *scripts* w package.json pozwala definiować komendy w rodzaju *npm run build* czy *npm run dev*, które automatyzują budowanie, testowanie i uruchamianie projektu. Dzięki temu npm spina cały proces developmentu z narzędziami takimi jak [Webpack](https://nodea.pl/pl/slownik-pojec/webpack) czy transpilery.

## Zastosowanie w praktyce

npm jest wykorzystywany w praktycznie każdym nowoczesnym projekcie frontendowym i wielu backendowych. Instalacja frameworka (React, Vue), biblioteki UI, narzędzia do lintingu czy zestawu testowego sprowadza się do jednego polecenia. Zależności trzymane są poza repozytorium [Git](https://nodea.pl/pl/slownik-pojec/git) — do wersjonowania trafiają jedynie package.json i lock, a katalog node\_modules odtwarza się poleceniem instalacji.

Alternatywami dla npm są [Yarn](https://nodea.pl/pl/slownik-pojec/yarn) oraz pnpm, korzystające z tego samego rejestru pakietów, ale oferujące inne strategie cache'owania i instalacji. Warto pamiętać o higienie zależności: regularnym audycie bezpieczeństwa komendą *npm audit* i aktualizowaniu paczek, ponieważ podatności w zewnętrznych bibliotekach to realny wektor ataku na aplikacje.

### Czym różni się npm od yarn?

Oba narzędzia zarządzają zależnościami JavaScript i korzystają z tego samego repozytorium pakietów npm. Yarn powstał jako szybsza i bardziej deterministyczna alternatywa dla wczesnych wersji npm, wprowadzając m.in. plik lock i lepsze cache'owanie. Współczesny npm nadrobił większość różnic, więc wybór jest dziś głównie kwestią preferencji zespołu.

### Czym jest plik package.json?

package.json to plik konfiguracyjny projektu Node.js, który opisuje jego nazwę, wersję, skrypty uruchomieniowe oraz listę zależności wraz z zakresami wersji. Na jego podstawie komenda npm install pobiera i instaluje wszystkie potrzebne pakiety do katalogu node\_modules, odtwarzając środowisko projektu na dowolnej maszynie.

## Powiązane

- [Node.js](https://nodea.pl/pl/slownik-pojec/node-js)
- [JavaScript](https://nodea.pl/pl/slownik-pojec/javascript)
- [Yarn](https://nodea.pl/pl/slownik-pojec/yarn)
- [Webpack](https://nodea.pl/pl/slownik-pojec/webpack)
- [Git](https://nodea.pl/pl/slownik-pojec/git)

---

Wersje językowe: [en](https://nodea.io/en/glossary/npm.md)  
Spis treści witryny: [llms.txt](https://nodea.pl/pl/llms.txt)
