Files
n8n-web/README.md
2025-09-11 14:15:26 +08:00

235 lines
5.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 云大学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方式(推荐)
```bash
# 克隆项目并进入目录
git clone <仓库地址>
cd XT_n8nWeb
# 启动开发环境
docker compose up --build -d
# 访问应用
open http://localhost:4000
```
### 本地开发
```bash
# 安装依赖
npm install
# 启动开发服务
npm run dev
# 生产环境构建
npm run build
```
## 🔧 配置指南
### Webhook回调配置
`docker-compose.yml`中配置n8n回调地址:
```yaml
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(可选扩展)
### 测试
```bash
# 运行单元测试(待实现)
npm run test
# 运行端到端测试(待实现)
npm run test:e2e
```
## 📚 API文档
### 知识库
```javascript
POST /webhook/knowledge-base
{
"topic": "字符串",
"highlights": "字符串",
"content": "字符串"
}
```
### 会议纪要
```javascript
POST /webhook/meeting-minutes
{
"agenda_notes": "字符串",
"transcript": "字符串",
"ai_highlights": "字符串"
}
```
### 文本提取
```javascript
POST /webhook/text-extractor
Content-Type: multipart/form-data
// 支持带进度跟踪的文件上传
```
### 竞品调研
```javascript
POST /webhook/competitor-research
{
"category": "字符串"
}
```
## 🐳 Docker命令
```bash
# 启动服务
docker compose up -d
# 查看日志
docker compose logs -f web
# 重启服务
docker compose restart web
# 停止服务
docker compose down
# 重建并启动
docker compose up --build -d
```
## 📝 贡献指南
1. Fork本仓库
2. 创建特性分支 (`git checkout -b feature/新功能`)
3. 提交变更 (`git commit -m '添加新功能'`)
4. 推送到分支 (`git push origin feature/新功能`)
5. 发起Pull Request
## 📄 许可协议
本项目采用MIT许可证详情参见[LICENSE](LICENSE)文件。
## 🤝 技术支持
如需帮助或问题咨询:
- 在仓库提交Issue
- 联系开发团队
- 查阅`docs/`目录文档
## 🔄 版本日志
### v1.0.0
- 首发四大AI辅助模块
- 支持Docker容器化部署
- 现代化Vue 3 + Element Plus界面
- 安全特性与输入验证机制
- 文件上传进度跟踪功能
---
**云大学AI卓越中心团队 倾力打造** ❤️
(注:部分功能标记的"待实现"可考虑移除或替换为实际功能描述)