Goxue Engine 一个面向儿童的互动式教育平台,支持富文本内容发布、Canvas 动画展示、Mermaid 思维导图,以及完善的内容管理系统。 ✨ 核心特性 📝 内容创作与展示 Markdown 编辑器: 基于 v-md-editor 的强大文本编辑功能 Canvas 动画: 支持自定义 JavaScript 动画代码,实现交互式问题解析 重播动画功能 全屏播放支持 响应式画布尺寸适配 Mermaid 思维导图: 支持多种图表类型 思维导图 (mindmap) 流程图 (flowchart) 时序图 (sequence diagram) 甘特图 (gantt) 以及更多… 🎨 交互式图表控制 缩放功能: 放大/缩小思维导图 拖拽平移: 自由拖动查看大型图表 旋转视图: 支持 ±90° 旋转查看 重置视图: 一键恢复默认视图 全屏模式: 沉浸式查看体验 👤 用户系统 微信一键登录: 集成微信授权 角色权限管理: User / Admin 双角色体系 个人中心: 用户信息管理 🛡️ 内容管理 审核流程: 管理员审核机制 分类管理: 内容分类与组织 公开访问: 支持未登录用户浏览文章详情页 🏗️ 技术架构 后端技术栈 语言: Go 1.21+ 框架: Beego v2 数据库: MySQL 配置: .env 环境变量管理 架构: 模块化分层架构 (RESTful API) 前端技术栈 框架: Vue 3 + TypeScript UI 库: Element Plus 构建工具: Vite 状态管理: Pinia 编辑器: @kangc/v-md-editor (Markdown) mermaid (图表渲染) 可视化增强: svg-pan-zoom (SVG 交互控制) Canvas API (动画渲染) 移动端 (可选) 框架: unibest (uni-app + Vue 3) 多端支持: 可编译为 H5 或微信小程序 📁 项目结构 Goxue_Engine/ ├── backend/ # Go + Beego v2 后端 │ ├── conf/ # 应用配置 │ ├── modules/ # 业务模块 │ │ ├── user/ # 用户模块 │ │ ├── content/ # 内容模块 │ │ └── common/ # 公共模块 │ ├── routers/ # API 路由 │ ├── static/ # 静态资源 │ │ └── admin/ # 前端构建产物 │ ├── main.go │ └── .env # 环境配置 ├── frontend/ # Vue 3 + Element Plus 管理后台 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── views/ # 页面组件 │ │ ├── plugins/ # 插件配置 (v-md-editor) │ │ └── types/ # TypeScript 类型定义 │ ├── vite.config.ts │ └── package.json └── mobile/ # uni-app 移动端 (可选) ├── src/ └── package.json 🚀 快速开始 环境要求 Go 1.24+ Node.js 16+ MySQL 8.0+ 后端启动 配置环境变量 cd backend # 直接编辑现有的 .env 文件 # 配置数据库连接等信息 安装依赖 go mod tidy 初始化数据库 # 执行 SQL 初始化脚不需要安装 # mysql -u root -p goxue_db < init.sql 编译二进制包 # 编译当前平台 # go build -o backend main.go # 编译 Linux 平台 # GOOS=linux GOARCH=amd64 go build -o backend main.go # 编译 Windows 平台 # GOOS=windows GOARCH=amd64 go build -o backend.exe main.go # 编译 macOS 平台 GOOS=darwin GOARCH=amd64 go build -o backend main.go 启动服务 # 方式一:直接运行编译好的二进制文件 ./backend # 方式二:使用 go run 直接运行 # go run main.go 后端服务默认运行在 http://localhost:8080 ...