# TVbox-Editor 规则可视化编辑器 & 管理器 本项目是一个为 TVbox 配置文件(通常为 `.json` 格式)设计的、基于 Web 的可视化图形界面(GUI)编辑器和管理器。它旨在简化对复杂 TVbox 规则的创建、修改、管理和打包过程,彻底告别手动修改 JSON 文件的繁琐工作。 --- ## ✨ 功能特性 * **远程/本地加载**:支持通过 URL 加载远程规则文件,或直接从本地上传/选择服务器上的文件。 * **可视化编辑**:通过直观的弹窗表单,对爬虫规则、解析接口、直播源、广告过滤等每一项配置进行独立的增、删、改、查操作。 * **模块化管理**:将复杂的 JSON 文件拆分为基础信息、直播、爬虫、解析、过滤等多个标签页,使配置结构一目了然。 * **一键下载与打包**:能够将远程规则及其引用的本地资源(如 `.jar` 文件)一键下载并打包到服务器的指定目录,自动生成一个可独立使用的本地规则包。 * **实时保存**:支持将在前端所做的所有修改(包括对基础信息、列表项的修改)完整地保存回服务器上的本地文件。 * **集成代码/表单编辑器**: * 为 `.js`, `.py`, `.json` 等文本类规则文件提供了基于 Ace Editor 的强大**在线代码编辑器**,支持语法高亮、主题切换、快捷键等功能。 * 为 `XYQHiker` 等特定规则提供了专门的**表单化编辑器**,无需编写代码即可完成配置。 * **辅助工具**: * **文件历史**:自动记录成功加载过的 URL,方便快速切换。 * **查看源码**:随时在弹窗中查看当前加载的 JSON 文件的原始文本。 * **响应式布局**:界面已适配 PC 和移动设备,方便随时随地进行管理。 * **丰富的工具类**:内置了强大的 CSS 原子化工具类,便于二次开发和自定义布局。 ## 📦 本地集成环境包 (Windows) 为了方便 Windows 用户快速体验,项目提供了一个预配置的本地集成环境包。该包内置了 PHP 运行环境,无需安装复杂的服务器软件(如 WAMP, XAMPP),解压后即可直接使用。 ### 优势与特点 * **一键启动**:双击 `start.bat` 即可启动本地服务器,无需任何配置。 * **极速体验**:所有操作均在本地完成,无网络延迟,响应速度极快。支持在**局域网**内分享给其他设备访问,提供更快的体验。 * **无缝 VS Code 编辑**:由于文件都在本地,所以您可以直接在页面上调用你电脑上的 VS Code 编辑器打开文件,获得最流畅、最强大的编辑体验。 * **数据私密**:所有规则和修改都保存在您自己的电脑上,安全可控。 * **绿色便携**:无需安装,免配环境,单文件,不写入注册表,解压即可用,方便携带。 ### 使用方法 1. 前往项目的 **[Releases](https://github.com/xMydev/TVboxEditor/releases)** 页面下载最新的 `TVboxEditorOffline_x.x.x_x64.7z` 文件。 2. 解压到您希望的任意位置。 3. 双击运行 `start.bat` 文件。 4. 一个命令行窗口将会打开,提示服务器已在 `http://127.0.0.1:xxxx` 上运行。 5. 在浏览器中打开该地址即可开始使用。 6. 使用完毕后,直接关闭该命令行窗口即可关闭服务器。 ## 🔧 安装与部署 (手动) 如果您不想使用集成的本地包,或者您使用的是 macOS/Linux 系统,可以按照以下步骤手动部署: 1. **环境要求**: 需要一个支持 PHP 的 Web 服务器环境(如 Apache, Nginx, Caddy),或直接使用bt面板。 2. **部署**: 将项目所有文件上传到您的 Web 服务器根目录或任意子目录。 3. **目录权限**: 请确保服务器上的 `/box` 和 `/cache` 这两个目录对于 PHP 进程是**可写**的。程序会自动创建它们(如果不存在)。 * `/box`: 用于存放用户下载、保存的规则文件。 * `/cache`: 用于缓存远程加载的规则文件,提高访问速度。 4. **访问**: 通过浏览器访问 `index.php` 即可开始使用。 ## 🔐 安全建议 (重要) 当您将此项目部署到**公共网络服务器**时,为防止未经授权的访问和文件修改,请务必遵循以下安全建议。 所有安全相关的配置都在 **`App/config.php`** 文件中。 ### 启用密码保护 本项目内置了一套简单的登录验证机制。 #### **对于公共服务器部署 (强烈建议):** 1. 打开 `App/config.php` 文件。 2. 将 `NEED_LOGIN` 的值设置为 `true` 来启用登录验证。 3. 修改 `PASSWORD` 的值为一个**强密码**,**切勿使用默认的 "tvbox"**。 ```php // App/config.php // 是否需要登录访问 define('NEED_LOGIN', true); // 登录密码 (请务必修改为您的强密码) define('PASSWORD', 'your_strong_password_here'); ``` #### **对于本地包或受信任的局域网环境:** 为了方便使用,您可以将 `NEED_LOGIN` 设置为 `false`。在这种模式下,访问页面将无需输入密码。 ```php // App/config.php // 在本地或受信任的环境中,可以禁用登录 define('NEED_LOGIN', false); ``` ## 📖 使用说明 1. **加载规则**: 在顶部的输入框中输入一个远程 `m.json` 文件的 URL,点击 **加载**。或者点击 **选择文件** 从服务器上的 `/box` 目录中选择一个文件。 2. **浏览与编辑**: 在下方的标签页中切换不同的规则类型。 * 点击列表中的任意一项,会弹出编辑窗口。修改后点击 **确认** 将更改暂存到浏览器内存中。 * 点击顶部的 **+ 新增** 按钮,可以添加新的规则项。 3. **保存修改**: 当您完成所有修改后,点击页面顶部的 **保存修改** 按钮,所有暂存的改动将会被一次性写入到服务器的当前文件中。 4. **下载规则**: 如果您想将一个远程规则连同其资源完整地下载到本地服务器,请使用 **下载** 功能。 5. **在线编辑**: 对于爬虫规则列表中的可编辑项,点击 **编辑** 按钮,会跳转到对应的在线编辑器页面。 ## 👤 作者 * **https://t.me/CCfork** ## 📄 授权许可 本项目采用 [MIT License](https://opensource.org/licenses/MIT) 授权。