Files
n8n_Demo/doc/任务/子任务/prompt_optimized.md

811 lines
19 KiB
Markdown
Raw Normal View History

# 订单班交互式网站生成任务指南
## 📋 任务概述
### 目标
为指定订单班order创建一个主题鲜明、内容完整、交互流畅的展示网站通过迭代设计和内容验证确保最终交付物的质量。
### 核心要求
- 深度理解订单班内容特色,设计契合主题的网站风格
- 实现流畅的滚动式交互体验,配合时间轴导航
- 支持丰富的图片展示和交互功能
- 通过5次设计迭代选择最优方案
- 确保内容的完整性和准确性
---
## 🗂️ 环境配置
### 变量定义
```bash
ORDER_NAME="食品" # 订单班名称(可替换为:化工、智能开发等)
```
### 关键路径
```bash
# 终端模拟数据路径
TERMINAL_SIMULATIONS="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/web_frontend/exhibition-demo/src/data/terminalSimulations/"
# 详细文稿资料路径
SOURCE_MATERIALS="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/web_frontend/web_result/data/订单班文档资料/${ORDER_NAME}"
# 网页生成结果路径
OUTPUT_PATH="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/web_frontend/web_result/order-classes/${ORDER_NAME}"
# SuperDesign工作目录
SUPERDESIGN_WORK="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/.superdesign/current"
# SuperDesign归档目录
SUPERDESIGN_ARCHIVE="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/.superdesign/archive_${ORDER_NAME}_$(date +%Y%m%d_%H%M%S)"
```
### 技术栈要求
- **前端框架**: React 18+ (TypeScript)
- **类型系统**: TypeScript 5.0+
- **样式方案**: Tailwind CSS 3.0+
- **构建工具**: Vite 5.0+
- **动画库**: GSAP 3.12+ (GreenSock Animation Platform)
- **图片处理**: 支持懒加载和预览功能
- **状态管理**: Zustand 或 Context API
- **图标库**: React Icons 或 Lucide React
---
## 📊 执行阶段
### 阶段一:内容分析与理解 (15分钟)
#### 输入
- 订单班详细文稿资料
- 终端模拟数据
#### 执行步骤
1. **扫描文稿结构**
```bash
# 列出所有文稿文件
find "${SOURCE_MATERIALS}" -type f -name "*.md" -o -name "*.txt" | head -20
# 统计内容规模
wc -l "${SOURCE_MATERIALS}"/**/*.md
```
2. **提取关键信息**
- 主题和核心概念
- 技术特点和创新点
- 时间线和里程碑
- 重要图表和数据
- 案例和应用场景
3. **建立内容清单**
创建 `content_checklist.json`:
```json
{
"theme": "订单班主题",
"key_features": ["特色1", "特色2"],
"timeline_events": [
{"date": "2024-01", "event": "事件描述", "importance": "high"}
],
"images": [
{"id": "img_001", "caption": "图片说明", "category": "产品展示"}
],
"technical_data": {
"charts": [],
"tables": []
}
}
```
#### 输出
- 内容分析报告 (`content_analysis.md`)
- 内容清单文件 (`content_checklist.json`)
#### 验收标准
- [ ] 识别出至少5个核心主题(具体数量以文稿资料中的内容准)
- [ ] 提取至少10个时间线事件(具体数量以文稿资料中的内容准)
- [ ] 整理所有重要图片资源
- [ ] 明确设计风格方向
---
### 阶段二:初始设计与架构 (20分钟)
#### 输入
- 内容分析报告
- 设计参考资源
#### 执行步骤
1. **创建项目结构**
```bash
mkdir -p "${OUTPUT_PATH}"/{src,public,components,styles,assets}
# 初始化 TypeScript + React 项目
cd "${OUTPUT_PATH}"
npm create vite@latest . -- --template react-ts
# 安装核心依赖
npm install
# 安装样式和动画库
npm install -D tailwindcss postcss autoprefixer @types/react @types/react-dom
npm install gsap @gsap/react
# 安装辅助库
npm install react-intersection-observer zustand lucide-react
npm install -D @types/node
# 初始化 Tailwind CSS
npx tailwindcss init -p
```
2. **设计信息架构**
```
网站结构:
├── 首屏 Hero Section
│ ├── 主标题
│ ├── 副标题
│ └── 滚动提示
├── 时间轴导航
│ ├── 固定定位
│ ├── 进度指示
│ └── 快速跳转
├── 内容区块(按时间顺序)
│ ├── 阶段1研发初期
│ ├── 阶段2技术突破
│ ├── 阶段3产品应用
│ └── 阶段4未来展望
└── 底部总结
```
3. **定义设计系统**
创建 `design-system.md`:
```markdown
## 颜色方案
- 主色:根据订单班特色选择
- 辅助色2-3个
- 中性色:灰度系统
## 字体系统
- 标题字体:思源黑体 / Inter
- 正文字体:系统默认
- 代码字体JetBrains Mono
## 间距系统
- 基础单位8px
- 组件间距16px, 24px, 32px, 48px
## 动画原则 (GSAP)
- 缓动函数:"power2.inOut", "power3.out", "elastic.out(1, 0.3)"
- 持续时间0.3s - 1.2s
- ScrollTrigger用于滚动动画
- Timeline用于复杂动画序列
- Stagger用于列表项动画
```
#### 输出
- 项目基础结构
- 设计系统文档
- 组件规划图
#### 验收标准
- [ ] 项目可以正常运行
- [ ] 设计系统完整定义
- [ ] 组件结构清晰合理
---
### 阶段三SuperDesign迭代优化 (40分钟)
#### 输入
- 初始设计方案
- 内容素材
#### 执行步骤
1. **准备SuperDesign环境**
```bash
# 创建工作目录
mkdir -p "${SUPERDESIGN_WORK}"
cd "${SUPERDESIGN_WORK}"
# 复制初始版本
cp -r "${OUTPUT_PATH}"/* .
```
2. **执行5次设计迭代**
**迭代1基础布局与色彩**
- 重点:确定整体布局结构和主色调
- 调整:网格系统、容器宽度、基础配色
- 输出:`iteration_1/`
**迭代2字体与排版优化**
- 重点:优化文字层级和可读性
- 调整:字号、行高、段落间距
- 输出:`iteration_2/`
**迭代3交互动效增强**
- 重点:添加滚动动画和过渡效果
- 调整:入场动画、悬停效果、滚动视差
- 输出:`iteration_3/`
**迭代4视觉细节打磨**
- 重点:完善图片展示和装饰元素
- 调整:阴影、圆角、边框、背景纹理
- 输出:`iteration_4/`
**迭代5响应式适配**
- 重点:确保多端显示效果
- 调整:断点设置、移动端布局、触摸交互
- 输出:`iteration_5/`
3. **评估与选择最优版本**
评估维度每项1-10分
```json
{
"visual_appeal": "视觉吸引力",
"brand_alignment": "品牌契合度",
"usability": "易用性",
"performance": "性能表现",
"content_presentation": "内容呈现",
"innovation": "创新性",
"technical_quality": "技术质量"
}
```
创建评估报告 `evaluation.md`:
```markdown
## 设计迭代评估报告
### 版本对比
| 版本 | 视觉 | 品牌 | 易用 | 性能 | 内容 | 创新 | 技术 | 总分 |
|------|------|------|------|------|------|------|------|------|
| V1 | 7 | 8 | 8 | 9 | 7 | 6 | 8 | 53 |
| V2 | 8 | 8 | 9 | 9 | 8 | 7 | 8 | 57 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... |
### 最终选择Version X
选择理由:...
```
#### 输出
- 5个迭代版本
- 评估报告
- 最优版本标记
#### 验收标准
- [ ] 完成5次完整迭代
- [ ] 每次迭代有明确改进
- [ ] 评估报告数据完整
- [ ] 最优版本选择有理有据
---
### 阶段四:功能实现与交互 (30分钟)
#### 输入
- 选定的最优设计版本
- 交互需求规格
#### 执行步骤
1. **实现时间轴导航**
```typescript
// components/TimelineNav.tsx
import React, { useEffect, useState, useRef } from 'react';
import { gsap } from 'gsap';
import { ScrollTrigger } from 'gsap/ScrollTrigger';
gsap.registerPlugin(ScrollTrigger);
interface TimelineSection {
id: string;
title: string;
date: string;
}
const TimelineNav: React.FC = () => {
const [activeSection, setActiveSection] = useState(0);
const [scrollProgress, setScrollProgress] = useState(0);
// 监听滚动位置
useEffect(() => {
const handleScroll = () => {
const scrollPercentage = (window.scrollY /
(document.documentElement.scrollHeight - window.innerHeight)) * 100;
setScrollProgress(scrollPercentage);
// 更新活动区块
const sections = document.querySelectorAll('.timeline-section');
sections.forEach((section, index) => {
const rect = section.getBoundingClientRect();
if (rect.top <= 100 && rect.bottom >= 100) {
setActiveSection(index);
}
});
};
window.addEventListener('scroll', handleScroll);
return () => window.removeEventListener('scroll', handleScroll);
}, []);
return (
<nav className="timeline-nav">
{/* 时间轴UI实现 */}
</nav>
);
};
```
2. **实现图片查看器**
```typescript
// components/ImageViewer.tsx
import React, { useState, useRef, useEffect } from 'react';
import { gsap } from 'gsap';
interface Image {
id: string;
thumbnail: string;
full: string;
caption?: string;
}
interface ImageViewerProps {
images: Image[];
}
const ImageViewer: React.FC<ImageViewerProps> = ({ images }) => {
const [selectedImage, setSelectedImage] = useState(null);
const [zoom, setZoom] = useState(1);
return (
<>
{/* 图片网格 */}
<div className="image-grid">
{images.map((img, idx) => (
<img
key={idx}
src={img.thumbnail}
onClick={() => setSelectedImage(img)}
loading="lazy"
/>
))}
</div>
{/* 全屏查看器 */}
{selectedImage && (
<div className="image-viewer-modal">
<img
src={selectedImage.full}
style={{ transform: `scale(${zoom})` }}
/>
{/* 控制按钮 */}
</div>
)}
</>
);
};
```
3. **实现平滑滚动和滚动动画**
```typescript
// utils/scrollAnimations.ts
import { gsap } from 'gsap';
import { ScrollTrigger } from 'gsap/ScrollTrigger';
gsap.registerPlugin(ScrollTrigger);
export const smoothScrollTo = (targetId: string): void => {
const element = document.getElementById(targetId);
if (element) {
// 使用 GSAP 实现更流畅的滚动
gsap.to(window, {
duration: 1.2,
scrollTo: {
y: element,
offsetY: 80 // 导航栏高度偏移
},
ease: "power3.inOut"
});
}
};
// 初始化滚动触发动画
export const initScrollAnimations = (): void => {
// 标题动画
gsap.utils.toArray<HTMLElement>('.animate-title').forEach((element) => {
gsap.from(element, {
y: 50,
opacity: 0,
duration: 1,
scrollTrigger: {
trigger: element,
start: 'top 80%',
end: 'bottom 20%',
toggleActions: 'play none none reverse'
}
});
});
// 内容区块动画
gsap.utils.toArray<HTMLElement>('.animate-content').forEach((element, index) => {
gsap.from(element, {
x: index % 2 === 0 ? -100 : 100,
opacity: 0,
duration: 1,
scrollTrigger: {
trigger: element,
start: 'top 75%',
scrub: 1
}
});
});
// 时间轴进度动画
gsap.to('.timeline-progress', {
height: '100%',
ease: 'none',
scrollTrigger: {
trigger: document.body,
start: 'top top',
end: 'bottom bottom',
scrub: true
}
});
};
```
4. **性能优化**
- 实现图片懒加载
- 添加滚动节流
- 优化动画性能
- 代码分割和按需加载
#### 输出
- 完整的交互组件
- 性能优化报告
- 功能测试清单
#### 验收标准
- [ ] 时间轴导航功能正常
- [ ] 图片查看器支持放大缩小
- [ ] 滚动性能流畅60fps
- [ ] 所有交互响应及时
---
### 阶段五:内容集成与验证 (25分钟)
#### 输入
- 功能完整的网站框架
- 原始内容资料
- 内容清单
#### 执行步骤
1. **内容迁移**
```bash
# 处理Markdown内容
npx tsx scripts/content-processor.ts \
--input "${SOURCE_MATERIALS}" \
--output "${OUTPUT_PATH}/src/content"
```
2. **内容验证检查表**
创建 `content_verification.md`:
```markdown
## 内容完整性检查
### 文本内容
- [ ] 所有章节标题已包含
- [ ] 核心段落无遗漏
- [ ] 技术术语准确
- [ ] 数据和数字正确
### 图片资源
- [ ] 所有图片已上传
- [ ] 图片清晰度满足要求
- [ ] 图片说明文字完整
- [ ] 图片版权信息标注
### 交互元素
- [ ] 时间线事件完整
- [ ] 链接地址正确
- [ ] 表格数据准确
- [ ] 图表显示正常
### SEO优化
- [ ] 页面标题设置
- [ ] Meta描述添加
- [ ] 图片Alt文本
- [ ] 结构化数据
```
3. **内容优化**
- 调整文字排版,提高可读性
- 优化图片尺寸和格式
- 添加适当的动画和过渡
- 确保内容层次清晰
4. **记录版本信息**
```typescript
// version.ts - 让Serena记录当前版本
interface VersionInfo {
version: string;
date: string;
order: string;
style: {
primaryColor: string;
fontFamily: string;
layoutType: string;
animationLibrary: string;
};
techStack: string[];
features: string[];
}
const versionInfo: VersionInfo = {
version: "1.0.0",
date: new Date().toISOString(),
order: ORDER_NAME,
style: {
primaryColor: "#xxx",
fontFamily: "Inter, system-ui",
layoutType: "timeline-scroll",
animationLibrary: "GSAP"
},
techStack: [
"React 18",
"TypeScript 5",
"Tailwind CSS 3",
"GSAP 3.12",
"Vite 5"
],
features: [
"时间轴导航",
"图片查看器",
"GSAP滚动动画",
"响应式设计",
"TypeScript类型安全"
]
};
// 保存到 version.json
await fs.writeFile(
'version.json',
JSON.stringify(versionInfo, null, 2)
);
```
#### 输出
- 内容完整的网站
- 验证报告
- 版本记录文件
#### 验收标准
- [ ] 内容100%迁移完成
- [ ] 无明显排版问题
- [ ] 图片显示正常
- [ ] 通过所有验证项
---
### 阶段六:部署与归档 (10分钟)
#### 输入
- 完成的网站项目
- SuperDesign工作文件
#### 执行步骤
1. **构建生产版本**
```bash
cd "${OUTPUT_PATH}"
npm run build
# 测试生产版本
npm run preview
```
2. **移动到最终位置**
```bash
# 确保目标目录存在
mkdir -p "${OUTPUT_PATH}"
# 复制最优版本
cp -r "${SUPERDESIGN_WORK}/iteration_${BEST_VERSION}/"* "${OUTPUT_PATH}/"
```
3. **归档SuperDesign文件**
```bash
# 创建归档目录
mkdir -p "${SUPERDESIGN_ARCHIVE}"
# 移动所有迭代版本
mv "${SUPERDESIGN_WORK}"/iteration_* "${SUPERDESIGN_ARCHIVE}/"
# 保存评估报告
cp "${SUPERDESIGN_WORK}/evaluation.md" "${SUPERDESIGN_ARCHIVE}/"
# 清理工作目录
rm -rf "${SUPERDESIGN_WORK}"/*
```
4. **生成交付文档**
创建 `README.md`:
```markdown
# ${ORDER_NAME} 订单班展示网站
## 项目信息
- 版本1.0.0
- 创建日期YYYY-MM-DD
- 设计迭代5次
- 最终选择Version X
## 运行指南
\`\`\`bash
# 安装依赖
npm install
# 开发模式
npm run dev
# 构建生产版本
npm run build
# 预览生产版本
npm run preview
\`\`\`
## 项目结构
...
## 特色功能
...
## 维护说明
...
```
#### 输出
- 生产就绪的网站
- 归档的设计文件
- 完整的文档
#### 验收标准
- [ ] 网站可正常访问
- [ ] 所有文件归档完成
- [ ] 文档清晰完整
- [ ] 无临时文件残留
---
## ⚠️ 注意事项
### 常见问题处理
1. **内容缺失**
- 检查原始资料路径是否正确
- 确认文件编码格式UTF-8
- 查看是否有权限问题
2. **样式冲突**
- 使用CSS Modules或Styled Components隔离样式
- 避免使用全局样式覆盖
- 保持命名规范一致性
3. **性能问题**
- 使用Chrome DevTools进行性能分析
- 实施代码分割和懒加载
- 优化图片资源WebP格式、适当压缩
4. **浏览器兼容**
- 测试主流浏览器Chrome、Firefox、Safari、Edge
- 使用Babel转译现代JavaScript
- 添加必要的CSS前缀
### 质量保证清单
- [ ] 代码通过ESLint检查
- [ ] 无控制台错误和警告
- [ ] TypeScript类型检查通过
- [ ] Lighthouse评分 > 90
- [ ] 移动端响应式正常
- [ ] 图片都有Alt文本
- [ ] 关键功能有单元测试
- [ ] README文档完整
- [ ] Git提交信息规范
### 备份策略
1. 每个迭代版本都保存副本
2. 重要修改前创建Git分支
3. 定期推送到远程仓库
4. 保留原始资料的备份
---
## 📝 执行命令汇总
```bash
# 快速启动脚本
#!/bin/bash
# 设置变量
export ORDER_NAME="食品"
export PROJECT_ROOT="/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示"
# 阶段1分析内容
echo "🔍 开始内容分析..."
# ... 内容分析命令
# 阶段2初始化项目
echo "🚀 初始化项目..."
# ... 项目初始化命令
# 阶段3设计迭代
echo "🎨 开始设计迭代..."
# ... SuperDesign命令
# 阶段4实现功能
echo "⚙️ 实现交互功能..."
# ... 功能实现命令
# 阶段5内容验证
echo "✅ 验证内容完整性..."
# ... 内容验证命令
# 阶段6部署归档
echo "📦 部署和归档..."
# ... 部署归档命令
echo "✨ 任务完成!"
```
---
## 🎯 成功标准
任务成功完成的标志:
1. **设计质量**
- 视觉设计符合订单班主题特色
- 用户体验流畅自然
- 响应式适配完善
2. **内容完整**
- 所有重要内容都已展示
- 信息架构清晰合理
- 无明显遗漏或错误
3. **技术实现**
- 代码质量高,可维护性好
- 性能优化到位
- 无明显bug
4. **交付规范**
- 文件组织整齐
- 文档说明完整
- 版本管理清晰
---
## 📚 参考资源
- [React文档](https://react.dev)
- [TypeScript文档](https://www.typescriptlang.org/docs)
- [Tailwind CSS](https://tailwindcss.com)
- [GSAP文档](https://gsap.com/docs)
- [GSAP ScrollTrigger](https://gsap.com/docs/v3/Plugins/ScrollTrigger)
- [Vite构建工具](https://vitejs.dev)
- [Web性能优化指南](https://web.dev/performance)
---
**提示词版本**: 2.0
**最后更新**: 2024-XX-XX
**适用对象**: Claude Code Agent