优雅草PC电脑清理器:基于 Electron 与 React 生态的开源 Windows 电脑清理工具项目

优雅草PC电脑清理器

分支1Tags1
文件最后提交记录最后更新时间
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前
18 天前

优雅草科技卓伊凡PC电脑清理器-优雅草清理器2026年9月14日发布

优雅草清理器

小巧、独立、开源的 Windows PC 电脑清理工具
聚焦浏览器缓存、无用插件 / 软件、大文件三大痛点

由 成都市一颗优雅草科技有限公司 出品。


产品EXE包下载地址

https://youyacao.lanzouq.com/ivVks48fwfyj

截图

产品介绍

优雅草清理器 是一款面向 Windows 用户的桌面客户端,主打「干净、可控、不折腾」:

  1. 浏览器缓存清理(核心):默认保留 Cookies 与登录状态,只清真正占空间的缓存。
  2. 无用插件与软件清理:找出长期不用的软件和浏览器扩展,减少系统冗余。
  3. 大文件清理:按可调阈值(默认 5GB)扫描大文件,并提供暂停 / 停止与实时扫描日志。

它不是大而全的「全家桶杀毒套件」,而是一个独立、小巧、可开源共建的专业清理工具——尤其适合开发者、测试同学,以及希望自己掌控清理范围的用户。


开发原因

优雅草科技技术总监 卓伊凡 在日常工作中发现:浏览器缓存经常是个大问题,悄悄吃掉大量磁盘空间,对用户使用电脑造成很烦的影响。

作为程序员,既要节约电脑空间,又经常做软件测试;开发工作者基本也不装杀毒软件。而目前市面上,很难找到一款独立、小巧、好用的浏览器缓存清理软件,以及靠谱的无用插件清理工具。

因此,优雅草清理器 应运而生。

卓伊凡决定将本产品完全开源、开源共建——既方便自己,也方便他人。欢迎提交 Issue、PR,一起把这款小工具做得更好。


功能概览

1. 浏览器缓存清理(核心)

支持扫描并清理:

  • Google Chrome
  • Microsoft Edge
  • Mozilla Firefox
  • Brave

默认安全选项(建议保持勾选):

选项 默认 说明
保留 Cookies 开启 不清 Cookie,避免网站登录态丢失
保留登录状态 开启 保留 Login Data / Local Storage 等登录相关数据

默认只清理 Cache、Code Cache、GPUCache、ShaderCache 等缓存目录。
清理前请先关闭对应浏览器,否则文件可能被占用导致删除失败。

2. 无用插件与软件

  • 扫描本机已安装软件(注册表卸载信息)
  • 扫描 Chrome / Edge 浏览器扩展
  • 可按「超过 N 天未使用」筛选(默认 90 天)
  • 勾选后可卸载软件或删除扩展目录

说明:普通软件卸载可能弹出系统自带卸载窗口;部分软件需管理员权限。

3. 大文件清理

  • 默认扫描阈值:5 GB(可在界面中自行调整)
  • 默认扫描目录:桌面、文档、下载、视频、图片、音乐,以及存在的 D:\ / E:\
  • 扫描过程提供黑底绿字终端日志,并支持 暂停 / 继续 / 停止
  • 支持「打开位置」定位文件后再决定是否删除

技术栈

层级 技术
桌面壳 Electron 34
构建 Vite 6
界面 React 19 + TypeScript
打包 electron-builder(Windows NSIS 安装包)

主进程(electron/)负责扫描与清理;渲染进程(src/)负责界面;通过 preload + IPC 安全通信。


环境要求

打包 / 开发前请确认:

  1. 操作系统:Windows 10 / 11(x64)
  2. Node.js:建议 18+(本仓库已在 Node 23 验证)
  3. 网络:首次安装会下载 Electron 二进制;国内建议使用项目内已配置的镜像(见 .npmrc)

查看版本:

node -v
npm -v

项目结构

youyacaocleaner/
├── build/                 # 应用图标(icon.ico / icon.png)
├── electron/              # Electron 主进程
│   ├── main.ts            # 窗口、IPC、图标
│   ├── preload.ts         # 暴露给前端的安全 API
│   └── cleaners/          # 浏览器 / 软件 / 大文件清理逻辑
├── public/                # 静态资源(favicon 等)
├── src/                   # React 界面
│   ├── App.tsx
│   ├── panels/            # 三个功能面板
│   ├── logo.png           # 应用图标源图(任务栏 / 窗口)
│   └── clogo.png          # 「一颗优雅草」品牌 Logo
├── release/               # 打包输出目录(执行 dist 后生成)
├── package.json
├── vite.config.ts
└── README.md

安装依赖

在项目根目录执行:

npm install

项目已配置 .npmrc:

registry=https://registry.npmmirror.com
electron_mirror=https://npmmirror.com/mirrors/electron/
electron_custom_dir={{ version }}

若 Electron 二进制未下全,可手动补装:

# PowerShell
$env:ELECTRON_MIRROR='https://npmmirror.com/mirrors/electron/'
node node_modules/electron/install.js

验证 Electron 是否就绪:

# 应存在该文件
dir node_modules\electron\dist\electron.exe

开发运行

npm run dev

执行后会:

  1. 启动 Vite 开发服务器(默认 http://127.0.0.1:5173)
  2. 自动拉起 Electron 窗口「优雅草清理器」

日常改界面代码一般会热更新;改 electron/ 主进程后通常需要重启 npm run dev。


仅构建(不打安装包)

先编译前端 + Electron 主进程,不生成安装程序:

npm run build

产物:

目录 内容
dist/ 渲染进程静态资源
dist-electron/ main.js / preload.js

打包成 EXE(详细)

一键打包(推荐)

npm run dist

该命令等价于:

npm run build
npx electron-builder --win

默认使用 NSIS 安装包(.exe 安装程序),产物输出到:

release/

常见文件:

文件(名称随版本变化) 说明
优雅草清理器 Setup 1.0.0.exe 安装程序,可分发给用户
win-unpacked/ 未打包的绿色目录版,内含可直接运行的 exe

安装后程序名:优雅草清理器
应用 ID:com.youyacao.cleaner
图标:build/icon.ico(由 src/logo.png 生成)

打包前检查清单

  1. 已执行过 npm install,且 electron.exe 存在
  2. build/icon.ico 存在(没有则见下方「重新生成图标」)
  3. 关闭正在运行的本应用,避免文件占用
  4. 磁盘空间充足(Electron 打包通常需要数百 MB 临时空间)
  5. 尽量用 PowerShell / CMD 管理员非必须,但杀毒软件可能拦截首次打包,可临时放行

推荐完整流程(复制即用)

在项目根目录 h:\newclone\youyacaocleaner 打开终端:

# 1. 安装依赖(首次)
npm install

# 2. 确认 Electron 二进制
Test-Path .\node_modules\electron\dist\electron.exe

# 3. 先本地跑通(可选)
npm run dev

# 4. 正式打包 Windows 安装包
npm run dist

打包成功后:

explorer .\release

把 优雅草清理器 Setup x.x.x.exe 发给用户安装即可。

只要绿色版(免安装目录)

若只想要 win-unpacked 里的可执行文件,仍可执行 npm run dist,然后进入:

release\win-unpacked\优雅草清理器.exe

双击即可运行(该目录需整体拷贝,不能只拷一个 exe)。

也可单独打目录包:

npm run build
npx electron-builder --win dir

指定架构(可选)

本机默认一般是当前系统架构。若要明确打 64 位:

npm run build
npx electron-builder --win --x64

打包失败常见原因

现象 处理
Electron 下载超时 / 安装卡住 使用 .npmrc 镜像,或手动执行 node node_modules/electron/install.js
icon.ico 找不到 确认 build/icon.ico 存在,见「重新生成图标」
杀毒软件拦截 app-builder / 安装包 加入白名单后重试
提示文件被占用 关掉本应用、关掉占用 release/ 的资源管理器窗口
electron-builder 缓存异常 删除 %LOCALAPPDATA%\electron-builder\Cache 后重试

版本号怎么改

修改 package.json 中的 version,例如:

"version": "1.0.1"

再执行 npm run dist,安装包文件名中的版本号会同步更新。

重新生成图标(可选)

替换 src/logo.png 后,可重新生成 Windows 图标:

node -e "import('png-to-ico').then(async m=>{const fs=await import('fs'); const buf=await (m.default||m)('src/logo.png'); fs.writeFileSync('build/icon.ico', buf); fs.copyFileSync('src/logo.png','build/icon.png'); fs.copyFileSync('src/logo.png','public/logo.png'); fs.copyFileSync('build/icon.ico','public/favicon.ico'); console.log('icon updated');})"

然后重新 npm run dist。


npm 脚本说明

命令 作用
npm run dev 开发模式启动(Vite + Electron)
npm run build 仅生产构建,不打包安装程序
npm run dist 构建 + 打 Windows NSIS 安装包(exe)
npm run preview 预览 Vite 构建结果(一般不用于桌面调试)

使用注意

  1. 清理浏览器缓存前,请先完全退出浏览器进程。
  2. 删除大文件不可恢复,删除前请确认路径。
  3. 卸载系统软件可能需要用户在弹出窗口中二次确认。
  4. 某些目录受权限保护,无管理员运行可提高清理成功率(按需)。
  5. 本工具面向本机维护场景,请勿用于清理他人未授权设备。

品牌与界面资源

资源 用途
src/logo.png / build/icon.ico 窗口图标、任务栏、安装包图标
src/clogo.png 主界面左上角「一颗优雅草」品牌标识(白底展示)

页脚文案:

成都市一颗优雅草科技有限公司(点击跳转 www.youyacao.com)
优雅草软件大全 · www.youyacao.cn


许可证

MIT

Copyright © 成都市一颗优雅草科技有限公司


技术原理

本软件采用 Electron 多进程架构:界面跑在渲染进程(Chromium),真正的磁盘扫描与删除跑在主进程(Node.js),两者通过 IPC(进程间通信) 协作,避免在页面里直接操作文件系统。

整体链路

React 界面 (src/)
    │  preload 暴露的 window.cleaner.*
    ▼
IPC Bridge (electron/preload.ts)
    │  invoke / on
    ▼
Main Process (electron/main.ts)
    │
    ├── 浏览器清理  → cleaners/browser.ts
    ├── 软件/扩展   → cleaners/software.ts
    └── 大文件扫描  → cleaners/largeFiles.ts

浏览器缓存清理原理

  1. 定位各浏览器用户数据目录(如 %LOCALAPPDATA%\Google\Chrome\User Data)。
  2. 枚举 Default / Profile * 配置,按目录名识别 Cache、Cookies、Login Data 等。
  3. 计算目录体积后展示;清理时默认只删除缓存路径,Cookies / 登录相关路径在勾选「保留」时跳过。
  4. 删除使用 fs.rm({ recursive: true, force: true });文件被浏览器占用时会记入错误列表。

无用软件 / 插件原理

  1. 已装软件:通过 PowerShell 读取卸载注册表
    HKLM/HKCU\...\Uninstall,过滤无显示名、系统组件等。
  2. 活跃度估算:结合安装目录下 exe/dll 的访问/修改时间,估算「多少天未使用」。
  3. 浏览器扩展:遍历 Chrome / Edge 的 Extensions 目录,读取 manifest.json 取名称与版本。
  4. 卸载时:扩展直接删目录;普通软件调用注册表中的 UninstallString(可能弹出系统卸载向导)。

大文件扫描原理(含暂停 / 停止 / 日志)

  1. 从用户常用目录与 D:\ / E:\ 等根路径出发,做深度受限的递归遍历(跳过 Windows、node_modules、$Recycle.Bin 等)。
  2. 对每个普通文件 stat,若 size >= 阈值(默认 5GB)则记入结果集,最终按体积排序并截断上限(400 条)。
  3. 实时日志:主进程扫描过程中通过 webContents.send('files:scan-log') 推送进度;渲染进程订阅后写入黑底绿字终端面板。
  4. 暂停 / 停止:主进程维护扫描控制器 { paused, stopped };遍历检查点会轮询该状态——暂停时挂起等待,停止时提前返回已发现结果。
  5. 日志做了节流(目录路径不会每一条都刷屏),既保证「高级终端感」,又避免 UI 卡顿。

安全边界

  • 渲染进程 无 Node 集成(nodeIntegration: false + contextIsolation: true)。
  • 前端只能调用 preload 白名单 API,不能任意读写磁盘。
  • 外链跳转经 shell.openExternal,且仅允许 http/https。

打包原理

开发期由 Vite 同时编译渲染进程与 Electron 入口;发布时 electron-builder 将 dist/、dist-electron/ 与图标资源打成 Windows NSIS 安装包,并生成 release/win-unpacked 绿色目录版。