1.2.1 • Published 8 months ago
clean-pkg-json v1.2.1
clean-pkg-json
Script to remove unnecessary properties from package.json on prepublish hook.
Support this project by ⭐️ starring and sharing it. Follow me to see what other cool projects I'm working on! ❤️
Why?
package.json is primarily for declaring an npm package and describing how it can be consumed.
However, it can often get bloated with development concerns such as devDependencies and configuration like eslintConfig, prettier, lint-staged, simple-git-hooks, etc.
Use clean-pkg-json in a prepublish hook to remove unnecessary properties from package.json. Useful in micropackages where every byte matters.
Install
npm install --save-dev clean-pkg-jsonUsage
Add clean-pkg-json to the prepack hook, which runs before npm publish and npm pack.
// package.json
{
"name": "my-package",
// ...
"scripts": {
// ...
"prepack": "clean-pkg-json",
},
}Flags
| Flag | Description |
|---|---|
-k, --keep <property name> | Property names to keep. Accepts multiple flags or a comma-delimited list. |
-v, --verbose | Verbose logs. |
-d, --dry | Dry run mode. Instead of writing to disk, it will log it. |
-h, --help | Show help |
--version | Show version |
Default preserved properties
By default, these properties are preserved in package.json:
npm
nameversionprivatepublishConfigscripts.preinstallscripts.installscripts.postinstallscripts.dependenciesfilesbinbrowsermainmandependenciespeerDependenciespeerDependenciesMetabundledDependenciesoptionalDependenciesenginesoscpudescriptionkeywordsauthormaintainerscontributorslicensehomepagerepositorybugsfunding
CDNs
Node.js
typeexportsimports
VSCode Extension Manifest
sponsorpublisherdisplayNamecategoriesgalleryBannerpreviewcontributesactivationEventsbadgesmarkdownqnasponsorextensionPackextensionDependenciesextensionKindicon
Angular Package Format
fesm2020fesm2015esm2020es2020
TypeScript
typestypingstypesVersions