© Intpro/Shutterstock.com
Die systematische Nutzung des npm-Paketmanagers

Es kommt nicht nur auf die letzte Meile an


Der npm-Paketmanager hat das Leben zahlreicher Entwickler deutlich vereinfacht. Auch wenn es immer wieder Sicherheitsprobleme gab, so steht der Paketmanager doch für eine wahre Erfolgsgeschichte. Folgt man einigen Best Practices, lässt es sich noch komfortabler damit arbeiten.

Der Node Package Manager hat sich in den letzten Jahren zum De-facto-Standardpaketmanager für JavaScript entwickelt. Weitere Paketmanager wie beispielsweise Yarn oder pnpm verfolgen die gleiche Idee und, was noch viel wichtiger ist, beziehen die Pakete aus der derselben Quelle. Wenn Sie also ein Paket in das npm Repository publizieren, ist Ihr Paket auch unter den anderen Paketmanagern verfügbar. Diese greifen entweder direkt auf das Repository zu oder erzeugen eine Kopie des Repositorys. npm ist nicht nur in der JavaScript-Welt eine feste Größe, auch insgesamt betrachtet ist npm nach den Zahlen von www.modulecounts.com der umfangreichste Paketmanager im Vergleich mit populären Paketmanagern anderer Programmiersprachen, wie beispielsweise Maven Central für Java oder Packagist für PHP. npm ist mittlerweile nicht nur die Quelle für Erweiterungen der Node.js-Plattform, sondern ein Paketmanager für das gesamte JavaScript-Ökosystem. Egal, ob Sie serverseitige Frameworks wie Express oder Nest, plattformunabhängige Bibliotheken wie lodash oder Frontend-Bibliotheken und Frameworks wie Angular, Vue oder React suchen, Sie werden alle über npm ausgeliefert. Doch warum ist npm so populär? Ein Grund hierfür ist sicherlich die geringe Einstiegshürde beim Publizieren von Paketen. Sie benötigen lediglich einen Account auf https://npmjs.com, für den Sie sich kostenlos registrieren können, und schon können Sie Ihr eigenes Paket veröffentlichen. Dieser Vorteil kann allerdings auch als einer der größten Nachteile des JavaScript-Ökosystems gesehen werden. Es gibt keinerlei Qualitätskontrolle für Pakete und keine Garantie, dass sich nicht in einem Paket Schadcode verbirgt. Theoretisch müssten Sie jedes Paket überprüfen, bevor Sie es in Ihre Applikation integrieren. Das geschieht jedoch in den seltensten Fällen, da eine umfassende Prüfung gerade bei größeren Paketen oder Paketen mit sehr vielen Abhängigkeiten den Rahmen sprengen würde. Viele Entwickler verlassen sich auf die sehr aktive Open-Source-Gemeinde, die sich um npm gebildet hat. Wird ein Sicherheitsproblem festgestellt, wird es gemeldet und bei einem npm-Audit als bekanntes Problem aufgelistet.

An dieser Stelle stellt sich die Frage: Was können ...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang