一个强大的多浏览器环境管理工具,专注于浏览器指纹管理、状态保存。
- 创建和管理多个Chrome浏览器实例
- 每个实例使用独立的用户数据目录
- 实时监控浏览器实例状态
- 配置持久化存储
- 跨平台支持 (Windows, macOS, Linux)
- Electron
- React
- TypeScript
- Puppeteer
- Webpack
browser-manager/
├── src/
│ ├── main/ # Electron主进程代码
│ │ ├── browserManager.ts # 浏览器实例管理
│ │ ├── main.ts # 主进程入口
│ │ ├── types.ts # 类型定义
│ │ └── utils.ts # 工具函数
│ └── renderer/ # 渲染进程代码
│ ├── App.tsx # 主应用组件
│ └── index.tsx # 渲染进程入口
├── build/ # 构建资源
├── dist/ # 编译输出
└── release/ # 打包输出
- 安装依赖:
npm install- 启动开发服务器:
npm run dev- 构建应用:
npm run build- 打包应用:
# 打包当前平台
npm run dist
# 打包特定平台
npm run dist:mac # macOS
npm run dist:win # Windows
npm run dist:linux # Linux项目支持热重载开发:
- 主进程代码修改会自动重启应用
- 渲染进程代码修改会热重载UI
- TypeScript代码实时编译
-
src/main/: 主进程相关代码browserManager.ts: 浏览器实例管理核心逻辑main.ts: Electron主进程入口types.ts: TypeScript类型定义utils.ts: 通用工具函数
-
src/renderer/: 渲染进程相关代码App.tsx: React主应用组件index.tsx: 渲染进程入口
- 开发构建:
npm run build- 生产打包:
npm run dist打包配置在 package.json 的 build 字段中定义。
- 确保系统已安装Chrome浏览器
- 开发时需要Node.js 20+环境
- 打包时注意不同平台的特殊配置
- 生产环境注意资源路径处理
- 如果遇到Chrome路径问题,检查
utils.ts中的路径配置 - 如果开发模式启动失败,确保8080端口未被占用
- 打包时注意系统对应的图标格式要求
MIT