npm (Node Package Manager) und pip sind die Paketverwaltungen der beiden populärsten Programmier-Ökosysteme: npm für JavaScript/Node.js, pip für Python. Beide installieren fertige Bibliotheken, verwalten Abhängigkeiten und halten Projekte reproduzierbar.
npm: JavaScript-Bibliotheken installieren
npm init -y
npm install express
npm init erzeugt die package.json (Projektbeschreibung + Abhängigkeiten). npm install <paket> lädt das Paket in node_modules und trägt es in die package.json ein.
npm install— installiert alle in package.json gelisteten Abhängigkeiten (im frisch geklonten Projekt)npm install -g <paket>— global installieren (z.B. CLI-Werkzeuge)npm uninstall <paket>— Paket entfernennpm run <skript>— Skript aus package.json ausführen (z.B.npm run dev)npm audit— Sicherheitslücken in Abhängigkeiten melden
pip: Python-Bibliotheken installieren
pip install requests
pip install -r requirements.txt
Die requirements.txt listet alle Abhängigkeiten eines Python-Projekts — mit pip install -r werden sie komplett installiert. Das Gegenstück zu package.json.
pip install --upgrade <paket>— Paket aktualisierenpip uninstall <paket>— Paket entfernenpip freeze— alle installierten Pakete mit Versionsnummern anzeigenpip list— installierte Pakete auflistenpip show <paket>— Details zu einem Paket (Version, Abhängigkeiten, Homepage)
Virtuelle Umgebungen: Der saubere Weg in Python
python3 -m venv .venv
source .venv/bin/activate
Pip installiert standardmäßig systemweit — auf modernen Systemen (PEP 668) oft blockiert. Eine virtuelle Umgebung kapselt die Pakete pro Projekt: python3 -m venv .venv anlegen, dann aktivieren. Node.js löst dasselbe Problem projektlokal mit node_modules und package-lock.json (exakte Versionen).
Praxis-Tipp
Immer die Lock-Dateien versionieren (package-lock.json, alternativ pip freeze > requirements.txt), damit alle Teammitglieder exakt dieselben Versionen bekommen. Vor dem Deployment npm audit bzw. pip list --outdated laufen lassen.
Verwandte Grundlagen: git: Versionierung und Teamarbeit und YAML, TOML und JSON.