Skip to content

Instantly share code, notes, and snippets.

@HansKre
Last active January 8, 2024 08:05
Show Gist options
  • Save HansKre/1ab2ba5cc775867491bbf72bf9effe42 to your computer and use it in GitHub Desktop.
Save HansKre/1ab2ba5cc775867491bbf72bf9effe42 to your computer and use it in GitHub Desktop.
npm

NPM

Regular tasks

npm audit npm audit fix

Unused dependencies

npm i -g depcheck npx depcheck --oneline npm un <dep | devdeps> npm i npm i

Outdated

npm i -g npm-check npx npm-check npx npm-check -u # interactive installations

Update

npm outdated

Check package version

npm view foo-package

const { execSync } = require('child_process');
const { dependencies, devDependencies } = require('./package.json');
const ignore = [
"@workbench/core",
"@workbench/react"
]
function updateDependencies(dependencyObject, type, legacyPeerDeps) {
const dependenciesList = Object.keys(dependencyObject);
dependenciesList.forEach(dependency => {
if (ignore.includes(dependency)) return;
const command = `npm i ${dependency}@latest --save-${type}${legacyPeerDeps ? ' --legacy-peer-deps' : ''}`;
console.log("----------------------------");
console.log(command);
console.log("----------------------------");
try {
execSync(command, { stdio: 'inherit' });
} catch (error) {
console.error(`Failed to update ${type} dependency ${dependency}: ${error.message}`);
}
});
}
const legacyPeerDeps = process.argv.includes('--legacy-peer-deps');
updateDependencies(dependencies, 'prod', legacyPeerDeps);
updateDependencies(devDependencies, 'dev', legacyPeerDeps);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment