为什么选择 autarky
在当今世界中,存储比计算成本更高。大多数开发人员使用 MacBook,可惜 MacBook 的存储空间相对较低(对于基本型号而言)。因此,存储空间经常被填满,我们花费大量时间选择要删除的内容。
动机
现在是2024年,我在我的笔记本电脑上存储空间不足,经过仔细分析,我发现大部分存储空间都被 node_modules 占用了。因为每个项目都有一个独立的 node_modules 目录(尽管版本相同,但会出现重复)。
我还有一些项目,我很少碰,但它们占用了大量空间。另一方面,手动选择和删除 node_modules 是一项繁琐的任务。所以我想为什么不自动化呢。
工作原理
Autarky 通过递归遍历当前工作目录(执行 autarky 的位置)下的所有子目录来工作。
- 输入以月为单位的时间。将显示超过给定时间的 node_modules。
- 选择要删除的
node_modules。 - 确认删除。
- 完成!(无需为更多存储付费。)
内部结构
Autarky 使用最新的开源技术构建。
- 用户界面 - 用户界面使用 React 编写,使用 Ink 的 reconciler 来呈现 React 组件。
- 状态管理 - 使用 Redux 实现在用户界面和进程之间共享数据的挑战。
- 大量计算 - 大数据处理在子进程上完成。
安装
# npm
npm i -g autarky
#yarn
yarn global add autarky
使用
$> autarky