云大学AI卓越中心·n8n工作流平台
一个基于Vue 3 + Element Plus构建的现代化单页应用(SPA),集成四大AI辅助工具的统一界面,支持Docker容器化部署。
🚀 核心功能
- 知识库助手:通过结构化文本输入构建与管理个人知识库
- 会议纪要生成:基于议程、转录文本和AI洞察自动生成会议总结
- 文本信息提取:从PDF/图片中提取结构化数据,支持进度跟踪
- 竞品调研:根据产品品类生成市场调研报告
- 现代化UI:采用科技风响应式布局设计
- 开箱即用:容器化开发环境,支持热更新
🛠️ 技术栈
- 前端框架:Vue 3 + 组合式API
- UI组件库:Element Plus 2.x
- 路由管理:Vue Router 4.x
- HTTP客户端:Axios
- 构建工具:Vite 4.x
- 容器化:Docker + Docker Compose
- Node.js:18.x (Alpine版)
📁 项目结构
├── src/
│ ├── api/
│ │ └── services.js # API服务层
│ ├── utils/
│ │ ├── download.js # 下载工具
│ │ ├── timing.js # 防抖函数
│ │ └── sanitize.js # XSS防护
│ ├── views/ # 页面组件
│ │ ├── KnowledgeBase.vue # 知识库
│ │ ├── MeetingMinutes.vue # 会议纪要
│ │ ├── InvoiceExtractor.vue # 发票提取
│ │ └── CompetitorResearch.vue # 竞品分析
│ ├── router/
│ │ └── index.js # 路由配置
│ ├── App.vue # 主布局
│ └── main.js # 应用入口
├── docker-compose.yml # 容器编排
├── Dockerfile # 容器定义
├── env.config.js # 回调配置
├── vite.config.js # Vite配置
└── docs/ # 文档资料
🚀 快速开始
环境准备
- Docker & Docker Compose
- Node.js 18+ (本地开发需安装)
Docker方式(推荐)
# 克隆项目并进入目录
git clone <仓库地址>
cd XT_n8nWeb
# 启动开发环境
docker compose up --build -d
# 访问应用
open http://localhost:4000
本地开发
# 安装依赖
npm install
# 启动开发服务
npm run dev
# 生产环境构建
npm run build
🔧 配置指南
Webhook回调配置
在docker-compose.yml中配置n8n回调地址:
environment:
- VITE_KNOWLEDGE_BASE_WEBHOOK_URL=http://host.docker.internal:5678/webhook/...
- VITE_MEETING_MINUTES_WEBHOOK_URL=http://host.docker.internal:5678/webhook/...
- VITE_INVOICE_EXTRACTOR_WEBHOOK_URL=http://host.docker.internal:5678/webhook/...
- VITE_COMPETITOR_RESEARCH_WEBHOOK_URL=http://host.docker.internal:5678/webhook/...
环境变量
VITE_KNOWLEDGE_BASE_WEBHOOK_URL:知识库处理端点VITE_MEETING_MINUTES_WEBHOOK_URL:会议纪要生成端点VITE_INVOICE_EXTRACTOR_WEBHOOK_URL:文本提取处理端点VITE_COMPETITOR_RESEARCH_WEBHOOK_URL:竞品分析端点
📖 使用手册
1. 知识库助手
- 输入:主题、关键要点、详细内容
- 特性:表单验证、XSS防护、防抖提交
- 输出:JSON数据发往配置的webhook
2. 会议纪要生成
- 输入:议程笔记、转录文本、AI摘要三个文本区
- 特性:标签页界面、至少一项必填验证
- 输出:JSON数据,完成后自动下载文件
3. 文本信息提取
- 输入:PDF/图片文件(≤10MB/个)
- 特性:拖拽上传、进度跟踪、文件类型验证
- 输出:Excel格式数据下载
4. 竞品调研
- 输入:产品品类名称
- 输出:调研报告下载
🔒 安全特性
- 输入净化:HTML实体编码防护XSS攻击
- 文件验证:上传类型与大小限制
- 防抖提交:防止重复请求
- 错误边界:优雅的错误处理与用户反馈
🧪 开发指南
热更新
Docker配置已包含热模块替换(HMR)功能,实现无缝开发体验。
代码质量
- ESLint代码规范检查
- Prettier格式化保障
- 支持TypeScript(可选扩展)
测试
# 运行单元测试(待实现)
npm run test
# 运行端到端测试(待实现)
npm run test:e2e
📚 API文档
知识库
POST /webhook/knowledge-base
{
"topic": "字符串",
"highlights": "字符串",
"content": "字符串"
}
会议纪要
POST /webhook/meeting-minutes
{
"agenda_notes": "字符串",
"transcript": "字符串",
"ai_highlights": "字符串"
}
文本提取
POST /webhook/text-extractor
Content-Type: multipart/form-data
// 支持带进度跟踪的文件上传
竞品调研
POST /webhook/competitor-research
{
"category": "字符串"
}
🐳 Docker命令
# 启动服务
docker compose up -d
# 查看日志
docker compose logs -f web
# 重启服务
docker compose restart web
# 停止服务
docker compose down
# 重建并启动
docker compose up --build -d
📝 贡献指南
- Fork本仓库
- 创建特性分支 (
git checkout -b feature/新功能) - 提交变更 (
git commit -m '添加新功能') - 推送到分支 (
git push origin feature/新功能) - 发起Pull Request
📄 许可协议
本项目采用MIT许可证,详情参见LICENSE文件。
🤝 技术支持
如需帮助或问题咨询:
- 在仓库提交Issue
- 联系开发团队
- 查阅
docs/目录文档
🔄 版本日志
v1.0.0
- 首发四大AI辅助模块
- 支持Docker容器化部署
- 现代化Vue 3 + Element Plus界面
- 安全特性与输入验证机制
- 文件上传进度跟踪功能
云大学AI卓越中心团队 倾力打造 ❤️
(注:部分功能标记的"待实现"可考虑移除或替换为实际功能描述)
Description
Languages
Vue
80.4%
JavaScript
16.9%
Dockerfile
1.6%
HTML
1.1%