GUGU WebUI

通过webui来管理所有插件、MCDR配置、在线安装、终端等多种功能

信息
管理

一键安装指令

!!MCDR plugin install guguwebui

数据同步于

...

上次更新

...

最新版本

总下载量

1018

返回插件仓库

PF-MCDR-WebUI

为 MCDR 开发的在线 WebUI 插件

仓库大小 最新版 议题 已关闭issues 下载量 最新发布下载量

Note

由于 GUGUbotWebUI 项目庞大,但迄今为止仅有开发者一名,所以我们从现在开始招募有志者加入我们!
有意者请加 QQ1377820366 或 QQ群726741344

插件说明

WebUI 文档:WebUI 文档

演示站

Note

演示站地址: https://looseprince.github.io/PF-MCDR-WebUI/

重要说明: 该演示站仅为UI界面和功能演示,没有实际功能。所有操作均为模拟演示,不会对真实的MCDR服务器产生任何影响。如需体验完整功能,请按照下方说明安装到您的MCDR服务器中。

主要功能

为MCDR提供一个 在线WebUI管理界面MCDR插件管理表单配置功能(可选使用在线编辑器)。

pip包管理

本地插件管理

  • 列出全部插件
  • 一键更新
  • 启动插件
  • 停止插件
  • 重载插件
  • 切换插件版本(第三方仓库于1.4.3起支持)
  • 插件配置文件的在线编辑器
  • 插件配置文件的在线表单

表单配置功能

  • 配置修改: 使用在线表单 在线编辑器进行配置文件的修改(在 所有插件 选项卡处修改)。
  • 支持的配置: yamljsonhtml

服务器终端

  • 提供服务器命令执行界面
  • 支持RCON实时反馈和命令历史记录。

AI辅助

  • 终端集成DeepSeek AI接口
  • 支持日志分析和问题解答,减少您的反复横跳。

主题切换

  • 支持浅色主题深色主题,默认为浅色,您可以在右上角切换显示模式

在线插件安装仓库

  • 提供一个插件安装管理器
  • 插件搜索、安装、卸载、更新、查看插件信息。
  • 多仓库支持,您可以添加多个仓库,并选择不同的仓库进行插件安装,不过请您注意风险。(v1.3.4)

公开聊天页

  • 提供一个页面,这样页面会与游戏中的聊天消息同步,并且可以发送消息到游戏内
  • 需要独立登录,与后端管理登录不互通
  • 端点:/chat
  • 想要使用此功能需要启用public_chat_enabled

公开聊天页玩家使用流程

  1. 访问 /chat 页面
  2. 生成验证码(第一次)
  3. 在游戏内发送 !!webui verify <验证码>
  4. 回到网页设置密码(设置完会自动登录)
  5. 使用 游戏ID+密码 直接登录(设置完密码后)

修改密码直接走第一次的流程使用验证码即可重新设置密码

Important

关于数据: 重载 本插件 自动更新 guguwebui_static 文件夹中的内容,如果您修改过内部的文件请自行保存,以防您的数据丢失。

Important

关于V1.3.0版本: 本项目于v1.3.0版本重构前端,如您是从v1.3.0版本之前升级的,请删除 guguwebui_static 文件夹中的内容,保留 db.json 即可。

依赖配置

Python 依赖

在v1.4.0起WebUI将自行处理python依赖,在1.4.0前可参考 requirements.txt 文件,使用命令 pip install -r requirements.txt 进行安装。

前置插件

PIM 插件,已内置 WebUI,如有需要可以在设置页面将其安装到外部,以为其他可能需要的插件提供帮助。

插件兼容性支持

WebUI 对以下插件提供特殊支持,以增强功能体验(v1.6.2,非必须):

  • player_ip_logger:当检测到 player_ip_logger 插件时,WebUI 的在线玩家列表会自动集成其玩家验证功能,并显示假人状态

  • fastapi_mcdr:当检测到 fastapi_mcdr 插件时,WebUI 会自动挂载为其子应用 当检测到 fastapi_mcdr 插件卸载时,WebUI 会自动切换到独立服务器模式,需要重新启动WebUI才会重新挂载到 fastapi_mcdr 的子应用

使用方式

目前未对接 GUGUbot 账号系统;当账号为 QQ 号时会显示 QQ 头像和昵称作为管理员名称和头像。

创建账户

!!webui create <username> <password>

更改密码

!!webui change <username> <old password> <newpassword>

临时密码

!!webui temp

Q&A 问答

Q: 为什么要开发这个插件?
A: 因为我乐意。

Q: 会支持MC服务器管理的功能吗?如模组管理、玩家管理、白名单等等……
A: 并不会深入涉及管理MC服务器,如有这方面的需求请查询MC服务器面板,仅可能会支持很小一部分,例如终端、重启服务器,更多的不在我们的范畴中。

Q: 可以加入开发吗?
A: 当然可以,您可以提交 pr 或者参与交流来参与开发。

Q: 会支持我的语言吗?
A: 我只会中文,你要是愿意可以参与,目前已有中文(zh-CN)和英文(en-US),在 lang文件夹

Q: 为什么有私货(有未使用的插件,如gugubot等)?
A: 因为这就是为它所开发(虽然GUGUbot的配置一直不完善[doge])。

Q: 如何获取实时最新版?
A: 前往 Releases页面 下载最新的预发布版本(Pre-release),这些版本会在每次代码更新后自动生成。或者你也可以自己打包src中的文件到zip,修改后缀为.mcdr

Q: 我有个插件,我觉得很适合WebUI,可以作为WebUI的前置吗?
A: WebUI不打算使用任何插件前置,如果有好的方案我们会考虑直接加入WebUI并在关于页感谢贡献。

Q: PIM插件 是什么?
A: PIM插件 是WebUI的插件安装管理器,它可以帮助您安装、卸载、更新插件,并且可以查看插件信息。

Q: 对于开发者如何提供配置文件以支持多语言(中文、英文等)描述?

A: 查看 插件兼容 文档。

功能开发

事件系统

Note

本功能尚处于测试开发阶段,可能会随时更新,请注意本文档的更新情况。

  • 为WebUI的聊天消息提供事件分发机制
  • 其他MCDR插件可以监听 webui.chat_message_sentwebui.message_received 事件
  • 发送消息到WebUI send_message_to_webui 函数
  • 详细文档请参考 WebUI事件系统文档
  • 示例插件请参考 examples/ 目录

示例图

截图来源v1.3.4本地测试(部分未改动截图为v1.3.0)

登录页image 仪表盘image MCDR配置image MC服务器配置image 本地插件image 插件配置image 插件仓库image 插件安装image 终端image AI分析image 设置image 浅色模式image 公开聊天页登录(1.6.0新增)IMAGE 公开聊天页

TODO

有BUG或是新的IDEA

如果需要更多联动或提交想法和问题请提交 issues 或 QQ 树梢 (1377820366) 提交!
如需要帮助或者交流请通过 QQ群 726741344 进行询问或者交流
视情况添加,请勿联系他人。

贡献

贡献人说明
树梢 (LoosePrince)功能设计、文档编写、Web设计、前端编写
雪开 (XueK66)代码开发、维护、功能设计
贡献项目功能备注
Ace Editor在线编辑器已不再使用
CodeMirror在线编辑器目前使用
MC-Server-InfoPython Minecraft 服务器信息查询仓库被作者删除
DeepSeek AIAI辅助功能接口支持
VditorMarkdown编辑器
TailwindCSSCSS框架
Alpine.jsJS框架
Font Awesome图标库
特别鸣谢说明
反馈者感谢你们的反馈
ChatGPTChatGPT协助编写
CursorCursor协助编写

介绍文本来源:src/../README.md