AI.Demo/.codebuddy/plans/英语试题讲解视频生成页面开发_a19e6819.md

141 lines
4.2 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.

---
name: 英语试题讲解视频生成页面开发
overview: 开发一个英语试题讲解视频生成页面包含试题文本输入、视频生成按钮、AI模型调用及视频预览区域支持生成进度展示。
design:
architecture:
framework: react
styleKeywords:
- Dark Glassmorphism
- Teal Accent
- Smooth Animations
- Card-based Layout
fontSystem:
fontFamily: Inter, PingFang SC, -apple-system, sans-serif
heading:
size: 1.2rem
weight: 600
subheading:
size: 1rem
weight: 600
body:
size: 0.95rem
weight: 400
colorSystem:
primary:
- "#14b8a6"
- "#0d9488"
background:
- "#0a0a0f"
- rgba(255,255,255,0.03)
text:
- "#ffffff"
- rgba(255,255,255,0.7)
functional:
- "#14b8a6 (生成/播放)"
- "#f87171 (错误)"
- "#fbbf24 (进度)"
todos:
- id: create-video-explanation-page
content: 创建 VideoExplanation.vue 页面组件,包含输入区、生成按钮、进度展示和视频预览区
status: completed
- id: add-router-config
content: 在 router/index.js 添加 /video-explanation 路由配置
status: completed
dependencies:
- create-video-explanation-page
- id: add-homepage-nav-entry
content: 在 HomePage.vue 添加视频讲解功能入口卡片
status: completed
dependencies:
- add-router-config
---
## 产品概述
开发一个英语试题讲解视频生成页面用户输入试题内容后系统调用最优AI模型生成对应的讲解视频。
## 核心功能
1. **试题输入**:提供文本输入框,支持用户粘贴或输入英语试题内容
2. **视频生成**调用AI模型生成讲解视频提供生成进度展示
3. **视频预览**:在页面右侧展示生成的视频内容,支持播放控制
4. **状态管理**:处理空闲、生成中、已完成、错误等多种状态
## 界面布局
- 左侧面板:试题文本输入区 + 生成按钮
- 右侧面板:视频预览区域 + 生成进度
- 顶部导航栏:包含返回按钮和页面标题
## 技术栈
- **前端框架**Vue 3 (Composition API + script setup)
- **路由管理**Vue Router
- **HTTP请求**Axios (支持流式响应)
- **构建工具**Vite
## 实现方案
### 架构设计
- 页面组件VideoExplanation.vue单文件组件
- 路由配置:在 router/index.js 中添加 `/video-explanation` 路由
- 导航入口:在 HomePage.vue 添加功能入口卡片
### 核心模块
1. **输入模块**:文本输入框,支持内容字数统计
2. **生成模块**调用AI视频生成API实时获取生成进度
3. **预览模块**:视频播放器组件,支持播放/暂停控制
4. **状态模块**:统一管理 idle/generating/done/error 状态
### API调用策略
- 使用 Axios 发起 POST 请求调用视频生成接口
- 支持流式响应解析,实时更新生成进度
- 进度信息通过 SSE 或增量文本返回
### 目录结构
```
src/
├── views/
│ └── VideoExplanation.vue # [NEW] 视频讲解页面组件
├── router/
│ └── index.js # [MODIFY] 添加视频讲解路由
└── views/
└── HomePage.vue # [MODIFY] 添加导航入口卡片
```
## 设计风格
继承项目现有的深色半透明玻璃态设计语言,保持一致的视觉体验:
- 深色背景 (#0a0a0f) 配合半透明卡片
- Teal 主色调 (#14b8a6) 用于主要按钮和强调元素
- 圆角设计 (16-20px) 营造现代感
- 毛玻璃效果 (backdrop-filter: blur) 增强层次感
- 柔和阴影和渐变边框提升质感
## 布局设计
### 页面结构
- **顶部导航栏**:返回按钮 + 页面标题(渐变色)
- **主内容区**左右分栏布局420px左侧 + 自适应右侧)
- **左侧面板**:输入区域 + 操作按钮
- **右侧面板**:视频预览 + 进度展示
### 视频预览区
- 视频播放器居中展示
- 支持播放/暂停/进度条控制
- 生成中显示动画进度指示器
- 空闲状态显示引导提示
## 动效设计
- 按钮悬停:上浮 + 阴影增强
- 加载状态旋转spinner + 脉冲动画
- 卡片入场fadeInUp 动画
- 进度展示:动态进度条 + 百分比