NPM steht für Node Package Manager und ist das Standard-Paketverwaltungssystem für JavaScript (und damit auch TypeScript).
Was NPM macht:
NPM ermöglicht es dir, fertige Code-Pakete (Libraries, Frameworks, Tools) in dein Projekt einzubinden, anstatt alles selbst schreiben zu müssen. Du kannst z.B. mit npm install axios eine HTTP-Library installieren und sofort nutzen.
Die drei Hauptkomponenten:
Zusammenhang mit JavaScript/TypeScript:
NPM wurde ursprünglich für Node.js entwickelt (serverseitiges JavaScript), ist aber heute der De-facto-Standard für praktisch alle JavaScript- und TypeScript-Projekte – egal ob Backend, Frontend, oder Tools. TypeScript selbst wird übrigens auch via NPM installiert (npm install typescript).
Typische Befehle:
npm init – neues Projekt anlegennpm install <paket> – Paket installierennpm run <script> – Scripts aus package.json ausführenAlternativen sind übrigens Yarn und pnpm, die kompatibel zur NPM-Registry sind, aber andere Installationsmechanismen nutzen.
Die Entsprechungen:
| JavaScript/NPM | Python |
|---|---|
| npm (CLI) | pip |
| npmjs.com (Registry) | PyPI (Python Package Index) |
| package.json | requirements.txt oder pyproject.toml |
| node_modules/ | virtuelle Umgebung (z.B. venv/) |
Wichtiger Unterschied: Python hat kein automatisches projektlokales Dependency-Management wie NPM. Deshalb arbeitet man typischerweise mit virtuellen Umgebungen (python -m venv .venv), um Abhängigkeiten pro Projekt zu isolieren.