<!doctype html> <html> <title>npm-prune</title> <meta charset="utf-8"> <link rel="stylesheet" type="text/css" href="../../static/style.css"> <link rel="canonical" href="https://www.npmjs.org/doc/cli/npm-prune.html"> <script async=true src="../../static/toc.js"></script> <body> <div id="wrapper"> <h1><a href="../cli/npm-prune.html">npm-prune</a></h1> <p>Remove extraneous packages</p> <h2 id="synopsis">SYNOPSIS</h2> <pre><code>npm prune [[<@scope>/]<pkg>...] [--production] [--dry-run] [--json]</code></pre><h2 id="description">DESCRIPTION</h2> <p>This command removes "extraneous" packages. If a package name is provided, then only packages matching one of the supplied names are removed.</p> <p>Extraneous packages are packages that are not listed on the parent package's dependencies list.</p> <p>If the <code>--production</code> flag is specified or the <code>NODE_ENV</code> environment variable is set to <code>production</code>, this command will remove the packages specified in your <code>devDependencies</code>. Setting <code>--no-production</code> will negate <code>NODE_ENV</code> being set to <code>production</code>.</p> <p>If the <code>--dry-run</code> flag is used then no changes will actually be made.</p> <p>If the <code>--json</code> flag is used then the changes <code>npm prune</code> made (or would have made with <code>--dry-run</code>) are printed as a JSON object.</p> <p>In normal operation with package-locks enabled, extraneous modules are pruned automatically when modules are installed and you'll only need this command with the <code>--production</code> flag.</p> <p>If you've disabled package-locks then extraneous modules will not be removed and it's up to you to run <code>npm prune</code> from time-to-time to remove them.</p> <h2 id="see-also">SEE ALSO</h2> <ul> <li><a href="../cli/npm-uninstall.html">npm-uninstall(1)</a></li> <li><a href="../files/npm-folders.html">npm-folders(5)</a></li> <li><a href="../cli/npm-ls.html">npm-ls(1)</a></li> </ul> </div> <table border=0 cellspacing=0 cellpadding=0 id=npmlogo> <tr><td style="width:180px;height:10px;background:rgb(237,127,127)" colspan=18> </td></tr> <tr><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)"> </td><td style="width:40px;height:10px;background:#fff" colspan=4> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4> </td><td style="width:40px;height:10px;background:#fff" colspan=4> </td><td rowspan=4 style="width:10px;height:10px;background:rgb(237,127,127)"> </td><td colspan=6 style="width:60px;height:10px;background:#fff"> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=4> </td></tr> <tr><td colspan=2 style="width:20px;height:30px;background:#fff" rowspan=3> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3> </td><td style="width:10px;height:10px;background:#fff" rowspan=3> </td><td style="width:20px;height:10px;background:#fff" rowspan=4 colspan=2> </td><td style="width:10px;height:20px;background:rgb(237,127,127)" rowspan=2> </td><td style="width:10px;height:10px;background:#fff" rowspan=3> </td><td style="width:20px;height:10px;background:#fff" rowspan=3 colspan=2> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3> </td><td style="width:10px;height:10px;background:#fff" rowspan=3> </td><td style="width:10px;height:10px;background:rgb(237,127,127)" rowspan=3> </td></tr> <tr><td style="width:10px;height:10px;background:#fff" rowspan=2> </td></tr> <tr><td style="width:10px;height:10px;background:#fff"> </td></tr> <tr><td style="width:60px;height:10px;background:rgb(237,127,127)" colspan=6> </td><td colspan=10 style="width:10px;height:10px;background:rgb(237,127,127)"> </td></tr> <tr><td colspan=5 style="width:50px;height:10px;background:#fff"> </td><td style="width:40px;height:10px;background:rgb(237,127,127)" colspan=4> </td><td style="width:90px;height:10px;background:#fff" colspan=9> </td></tr> </table> <p id="footer">npm-prune — npm@6.5.0</p>