Clean package.json before publishing your package by removing unnecessary properties.
MIT License
Clean package.json
in prepack
hook before publishing your package by removing unnecessary properties.
Feel free to reach me on other social platforms! YouTube || Discord || Instagram || Twitter || TikTok || Blog || Facebook
Support
Please star this project and share it with others to show your support. Follow me for updates on future projects and tutorials!
package.json
most of the time gets filled up with development related information ex: devDependencies
and configuration like eslintConfig
, prettier
, lint-staged
, simple-git-hooks
, etc.
If you are building npm package or micropackages where every byte matters then you can use clean-package-dot-json
in a prepack hook to remove unnecessary properties from package.json
.
npm install --save-dev clean-package-dot-json
Add clean-package-dot-json
to the prepack
hook, which runs before npm publish
and npm pack
.
// package.json
{
name: 'my-package',
// ...
scripts: {
// ...
prepack: 'node ./node_modules/.bin/clean-package-dot-json',
},
}
Flag | Description |
---|---|
-i, --ignore <property name> |
Property names to ignore during cleanup. 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. |
By default, these properties are ignored in package.json
:
name
version
private
publishConfig
scripts.preinstall
scripts.install
scripts.postinstall
scripts.dependencies
files
bin
browser
main
man
dependencies
peerDependencies
peerDependenciesMeta
bundledDependencies
optionalDependencies
engines
os
cpu
description
keywords
author
contributors
license
homepage
repository
bugs
funding
type
exports
imports
sponsor
publisher
displayName
categories
galleryBanner
preview
contributes
activationEvents
badges
markdown
qna
sponsor
extensionPack
extensionDependencies
extensionKind
icon
fesm2020
fesm2015
esm2020
es2020
types
typings
typesVersions