package.json erstellen

package.json erstellen mit Prüfung: Paketname nach npm-Regeln, Version, Lizenz, type module, npm-Skripte und Abhängigkeiten als fertige Datei.

package.json

    Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.

    Was in die package.json gehört

    Die package.json beschreibt ein JavaScript-Projekt: Name, Version, Abhängigkeiten und Befehle. Mit diesem Generator können Sie eine package.json erstellen, die von Anfang an vollständig ist, statt nach npm init oder npm init -y die Felder einzeln nachzutragen. Der package.json Generator prüft dabei den Paketnamen nach den Regeln von npm (Kleinbuchstaben, höchstens 214 Zeichen, keine Leerzeichen, kein Punkt oder Unterstrich am Anfang, optional mit Scope wie @firma/paket) und die Version nach Semantic Versioning.

    npm-Skripte tragen Sie zeilenweise als name: befehl ein. npm start und npm test funktionieren ohne run, alle anderen rufen Sie mit npm run name auf. Im Skript stehen die Programme aus node_modules/.bin direkt zur Verfügung, deshalb genügt eslint . statt eines langen Pfads. Abhängigkeiten geben Sie als paket@version an; fehlt die Version, setzt der Generator latest ein und weist darauf hin, dass Sie nach dem ersten npm install eine feste Version eintragen sollten.

    Mit "type": "module" behandelt Node.js alle .js-Dateien des Pakets als ES-Module mit import und export; ohne das Feld oder mit commonjs gilt require. Das Feld exports legt fest, welche Einstiegspunkte von außen importiert werden dürfen, und hat Vorrang vor main; der Generator setzt beide, damit auch ältere Werkzeuge den Einstieg finden. files begrenzt, was bei npm publish im Paket landet. Bereiche wie ^1.2.0 prüfen Sie mit dem Semver-Rechner.

    Anleitung: package.json erstellen in 4 Schritten

    1. „Paketname“ und „Version“ eintragen; der Name wird sofort gegen die npm-Regeln geprüft.
    2. Beschreibung, Autor, Lizenz und Modulsystem unter „type“ wählen.
    3. Unter „Skripte“ je Zeile name: befehl eintragen, unter „Abhängigkeiten“ je Zeile paket@version.
    4. Ergebnis kopieren, als package.json speichern und npm install ausführen.

    Typische Anwendungsfälle

    • Ein neues Node.js-Projekt mit vollständigen Angaben anlegen, statt nach npm init -y alles von Hand nachzutragen.
    • Eine Bibliothek veröffentlichen: Name, Lizenz, Einstiegspunkt und exports korrekt setzen.
    • Interne Projekte mit private: true vor versehentlichem Veröffentlichen schützen.
    Fragen

    Häufige Fragen

    Welche Felder sind Pflicht?

    Für ein veröffentlichtes Paket nur name und version. Für Anwendungen, die nie veröffentlicht werden, ist auch das nicht zwingend; dann empfiehlt sich "private": true, damit ein versehentliches npm publish abgelehnt wird.

    Was ist der Unterschied zwischen dependencies und devDependencies?

    dependencies braucht das Programm zur Laufzeit, devDependencies nur beim Entwickeln, etwa Linter, Testframeworks oder TypeScript. Mit npm ci --omit=dev werden nur die ersten installiert.

    Warum wird mein Paketname abgelehnt?

    Häufige Gründe sind Großbuchstaben, Leerzeichen, ein Punkt oder Unterstrich am Anfang oder Sonderzeichen wie ! oder *. Ob der Name auf npm noch frei ist, prüft das Werkzeug nicht; das zeigt npm view name.

    Welche Lizenzangabe ist richtig?

    Ein SPDX-Bezeichner wie MIT oder Apache-2.0. Für Code, den niemand verwenden darf, ist UNLICENSED vorgesehen. Die Lizenzdatei selbst gehört zusätzlich ins Repository.

    Kann ich die Datei mit Kommentaren versehen?

    Nein, die package.json ist reines JSON und erlaubt keine Kommentare. Erklärungen gehören in die README oder in ein eigenes Feld, das npm ignoriert.

    Was bedeuten ^ und ~ vor einer Versionsnummer?

    ^1.2.3 erlaubt Updates bis unter 2.0.0, ~1.2.3 nur bis unter 1.3.0. Welche Version tatsächlich installiert ist, hält die package-lock.json fest.

    Muss die package-lock.json ins Repository?

    Bei Anwendungen ja, damit alle mit denselben Versionen arbeiten und npm ci in der CI reproduzierbar installiert. Bei Bibliotheken wird sie beim Veröffentlichen ohnehin nicht mitgeliefert.

    Weitere Werkzeuge

    Das könnte auch helfen

    Alle 558 Werkzeuge