Package.json-generator
In plaats van npm init uit te voeren en elf vraagstukken te beantwoorden, vul een formulier in en ontvang een ordelijk, correct gestructureerd package.json-bestand. Deze generator omvat de vereiste velden (naam, versie), de veelgebruikte velden (scripts, afhankelijkheden, devDependencies, engines) en de belangrijke details (repository, fouten, sleutelwoorden, licentie) die ervoor zorgen dat een pakket eenvoudig te vinden en te publiceren is.
Hoe je package.json genereert
-
1
Geef naam en versie op
De naam volgt de regels van npm: kleine letters, geschikt voor URLs en beperkt tot maximaal 214 karakters. De versie is in het semver-formaat (bijvoorbeeld 0.1.0).
-
2
Kies de modulotype
CommonJS (standaard) of ESM via 'type': 'module'. Van toepassing op projecten met Node.js 14 en hoger.
-
3
Scripten toevoegen
Starten, bouwen, testen en linten, deze commando's worden uitgevoerd met `npm run <name>`.
-
4
Lijst van afhankelijkheden
Runtime-pakketten in afhankelijkheden; hulpmiddelen in ontwikkelingsafhankelijkheden.
-
5
Metagegevens instellen
Beschrijving, auteur, licentie, repository-URL en sleutelwoorden.
-
6
Kopieer de uitvoering
Plaats het in een nieuwe package.json-bestand op de wortelpath van het project.
De belangrijkste velden
| Veld | Verplicht? | Opmerkingen |
|---|---|---|
name |
Ja | Kleine letters, 1–214 karakters, geschikt voor URLs |
version |
Ja | Semver (major.minor.patch) |
type |
Nee | “module” voor ESM; weggelaten voor CommonJS |
main |
Aanbevolen | Invoerpunt voor CommonJS (index.js) |
exports |
Aanbevolen | Moderne exportkaart voor dubbele CJS/ESM |
scripts |
Sterk aan te raden | Commando’s voor npm run <name> |
dependencies |
Naar behoefte | Run-timepakketten |
devDependencies |
Naar behoefte | Bouwtools, testrunners, linters |
engines |
Handig om te hebben | Vereiste versiebereik voor de node |
license |
Ja voor publicatie | SPDX-identificator zoals MIT, Apache-2.0 |
Semver-cheatlist
1.0.0, major.minor.patch^1.0.0– compatibel met versies 1.x.x (≥1.0.0, <2.0.0)~1.0.0, alleen patch-updates (>=1.0.0, <1.1.0)>=1.0.0 <2.0.0, expliciete bereik1.0.0-beta.1, prereleaselatest, npm-tag, geen versie
De standaardwaarde bij het uitvoeren van npm install package is ^, waardoor niet-onderbrekende updates mogelijk zijn.
Standaard scripts die je zeker moet hebben
{
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js",
"build": "tsc",
"test": "vitest",
"lint": "eslint .",
"format": "prettier --write ."
}
}
Valkuilen bij het benoemen
- Geen hoofdletters.
MyPackagemislukt bijnpm install. - Geen spaties. Gebruik koppeltekens:
my-package. - Scoped namen beginnen met
@org/voor organisaties op GitHub of npm:@acme/utils. - Gereserveerde woorden.
node_modules,favicon.ico,coreenexpressmogen niet worden gebruikt als pakketnamen.
Licentieopties
Kies een erkende SPDX-identificator:
- MIT, de meest flexibele en veelgebruikte optie.
- Apache-2.0, permissief met octrooiverlening.
- ISC – een zeer korte, MIT-achtige licentie die standaard wordt gebruikt door npm.
- GPL-3.0 of een latere versie – copyleft.
- UNLICENSED, privépakket, niet bedoeld voor distributie.
Foute of dubbelzinnige licentiestrings leiden tot waarschuwingen bij het publiceren op npm.
Veelgestelde vragen
Dependenties worden geïnstalleerd wanneer iemand npm install uitvoert in een project dat uw pakket gebruikt. Dev-dependencies worden alleen geïnstalleerd in het eigen ontwikkelomgeving van het pakket. Plaats runtime-pakketten onder ‘dependencies’ en test-/build-hulpmiddelen onder ‘devDependencies’.
Ja, voor applicaties. De lockfile bepaalt de exacte versie en zorgt voor reproduceerbare installaties op verschillende apparaten en in de CI-processen. Voor bibliothekenpakketten die worden gepubliceerd op npm is de lockfile optioneel; gebruikers krijgen hun eigen lockfile.
Enkel als u wilt dat het pakket standaard in ESM-synthese (import/export-synthese) is opgesteld; anders worden .js-bestanden als CommonJS bestempeld. U kunt ook .mjs gebruiken voor ESM-bestanden en .cjs voor CommonJS-bestanden, onafhankelijk van de type.
De versies van de node tegen welke uw code is getest. Een typische keuze vandaag de dag is "engines": {"node": ">=18"}. Dit is een waarschuwing, geen fout; desondanks houdt het hulpmiddel deze in aanmerking en gebruikers plakken deze correct.
Gerelateerde tools
ASCII-tabelreferentie
Volledige ASCII-tabel van 0 tot 127 met decimale, hexadecimale, octale en binaire waarden en HTML-numerieke referentienotatie, inclusief control codes zoals NUL, LF en DEL.
HTML-tekenreferentie
Een doorzoekbare lijst met HTML-entiteiten, hun benoemde en numerieke codes, plus kopiëren met één klik voor speciale tekens en symbolen.
Sneltoetsenoverzicht
Zoek gedocumenteerde standaardsneltoetsen voor VS Code, Chrome en Bash met GNU Readline op macOS, Windows en Linux.
E-mailvalidator
Valideer een e-mailadres: RFC 5322-syntaxcontrole, live MX-record-zoekopdracht, plus details over lokaal deel, domein en lengte. Er wordt geen e-mail verstuurd.
EditorConfig-generator
Genereer een .editorconfig-bestand met uw regels voor inspringstijl en -grootte, regeleinde, tekenset en witruimte voor consistente opmaak in alle IDE's en editors.
Telefoonnummers controleren
Controleer de structuur van telefoonnummers per land en bekijk regio, type en E.164-, internationale, nationale en RFC 3966-notatie.
Tool beschikbaar in andere talen
- Package.json 생성기 [KO]
- Package.json-generator [SV]
- مولد package.json [AR]
- Generator package.json [PL]
- package.json-Generator [DE]
- Générateur de package.json [FR]
- ตัวสร้าง package.json [TH]
- Generator package.json [ID]
- PackageJsonジェネレータ [JA]
- Trình tạo package.json [VI]
- Gerador de Package.json [PT]
- Generador de Package.json [ES]
- Package.json Generator [EN]
- Generatore di Package.json [IT]
- package.json 生成器 [ZH]
- Генератор package.json [RU]
- Package.json Oluşturucu [TR]