oldj/SwitchHosts

GitHub: oldj/SwitchHosts

一款基于 Tauri 和 React 构建的跨平台 hosts 文件管理工具,支持本地与远程 hosts 配置的快速切换与组织。

Stars: 26970 | Forks: 2654

Special thanks to:
Warp sponsorship ### [Warp,面向开发者的智能终端](https://go.warp.dev/SwitchHosts) [适用于 MacOS、Linux 和 Windows](https://go.warp.dev/SwitchHosts)
# SwitchHosts - [Polski](README.pl.md) - [简体中文](README.zh_hans.md) - [繁體中文](README.zh_hant.md) 主页:[https://switchhosts.vercel.app](https://switchhosts.vercel.app) SwitchHosts 是一款用于管理 hosts 文件的应用,它基于 [Tauri](https://tauri.app/)、[React](https://facebook.github.io/react/)、[Jotai](https://jotai.org/)、[Mantine](https://mantine.dev/) 等技术构建。 ## 截图 SwitchHosts screenshot ## 功能 - 管理系统、本地、远程、分组以及文件夹的 hosts 记录 - 从主窗口或系统托盘快速切换 hosts - 为 hosts 文件提供语法高亮 - 在所有 hosts 记录中进行查找和替换 - 手动、按计划或在启动时刷新远程 hosts - 导入/导出 hosts 数据,包括从 URL 导入备份 - 将记录移至回收站,并在稍后恢复或删除 - 针对写入模式、代理、更新检查、开机启动、应用后执行命令以及本地 HTTP API 的偏好设置 ## 安装 ### 下载 你可以下载源代码并自行构建,或者从以下链接下载已构建的版本: - [SwitchHosts 下载页面 (GitHub release)](https://github.com/oldj/SwitchHosts/releases) ``` choco install switchhosts ``` ## 备份 SwitchHosts 将数据存储在 `~/.SwitchHosts`(或者在 Windows 上当前用户主目录下的 `.SwitchHosts` 文件夹中)。在 v5 的数据目录结构中: - `~/.SwitchHosts/manifest.json` 存储 hosts 树状结构 - `~/.SwitchHosts/entries/` 存储本地和远程的 hosts 内容 - `~/.SwitchHosts/trashcan.json` 存储回收站记录 - `~/.SwitchHosts/internal/config.json` 存储偏好设置 - `~/.SwitchHosts/internal/histories/` 存储系统 hosts 和命令执行历史 要进行完整的手动备份,请复制整个 `~/.SwitchHosts` 文件夹。应用内的导出功能会生成一个 hosts 数据备份 JSON,但不包含偏好设置和历史记录。 ## 开发与构建 ### 前置条件 - [Node.js](https://nodejs.org/) - [Rust](https://www.rust-lang.org/tools/install) - Tauri 系统依赖,请参阅 [Tauri 前置条件](https://v2.tauri.app/start/prerequisites/) ### 开发 - 运行 `npm install` 安装依赖 - 运行 `npm run tauri:dev` 以开发模式启动应用 ### 构建与打包 - 运行 `npm run tauri:build` 创建生产构建 - 打包后的文件将位于 `./src-tauri/target/release/bundle/` ``` # development npm run tauri:dev # production build npm run tauri:build ``` ## 版权 SwitchHosts 是一款免费开源软件,基于 [Apache License](./LICENSE) 发布。
标签:MITM代理, 可视化界面, 通知系统