Node.js 正在清理部署和装运的节点\u模块文件夹

Node.js 正在清理部署和装运的节点\u模块文件夹,node.js,npm,Node.js,Npm,我们有一个非常独特的部署/装运情况。我们正在将我们的软件构建成一个归档文件,并将其通过海洋运送到非洲,在那里客户的机器无法访问互联网。或者连接非常有限和缓慢。想象一下56K,75%的丢包率 我们使用bower和npm包管理器来管理前端和后端包 使用bower,我们只需下载软件包,保存文件,一旦构建,我们只需删除bower\u组件文件夹。这将部署归档减少了60% 下一步是清理node\u modules文件夹 tl;dr是否可以从node_modules文件夹中删除不需要的文件,即bcrypt中间

我们有一个非常独特的部署/装运情况。我们正在将我们的软件构建成一个归档文件,并将其通过海洋运送到非洲,在那里客户的机器无法访问互联网。或者连接非常有限和缓慢。想象一下56K,75%的丢包率

我们使用
bower
npm
包管理器来管理前端和后端包

使用bower,我们只需下载软件包,保存文件,一旦构建,我们只需删除
bower\u组件
文件夹。这将部署归档减少了60%

下一步是清理
node\u modules
文件夹


tl;dr是否可以从node_modules文件夹中删除不需要的文件,即bcrypt中间构建文件等,以便我们只保留绝对必要的文件。

npm最接近的功能是
重复数据消除
命令。这将删除npm包的重复副本。然而,npm模块通常附带许多文件(文档、测试、图标),而这些文件在运行时并不是严格必需的。我不知道有任何现有的工具来删减这些,因为这个过程是相当不确定的。您可以使用构成
browserify
核心的一些解析/分析模块来遍历您的程序,找到它加载的所有实际javascript文件,并省略该图中没有的任何内容,但我不知道有一个预先存在的工具可以做到这一点。如果你要建造一些东西,我相信其他人会发现它很有用。

你找到了什么好的解决方案吗?几年后,想知道是否有什么存在?