Files
monisuo/flutter_monisuo/PROMPT.md

267 lines
6.6 KiB
Markdown
Raw Normal View History

# 目标
使用 shadcn_ui 现代化 Flutter 虚拟货币交易平台的主题和 UI统一设计系统提升用户体验。
## 参考文件
- `specs/theme-modernization.md` - 主题现代化规范
- `AGENTS.md` - 项目说明和注意事项
- `../REFACTOR_PLAN.md` - 已有的重构计划
- `IMPLEMENTATION_PLAN.md` - 实施计划(待创建)
## 任务范围
### Phase 1: 分析和学习 (Analysis & Learning)
1. 读取并理解 `../REFACTOR_PLAN.md` - 已有的重构计划
2. 分析现有页面:
- 哪些页面已经用 shadcn 重构
- 哪些页面还在使用 Material 组件
- 哪些地方有硬编码的颜色/样式
3. 识别主题配置:
- 当前的 ShadTheme 配置
- 品牌色、涨跌色、中性色
- 深色/浅色模式支持
4. 列出需要创建的自定义组件
### Phase 2: 核心页面替换 (Core Pages Replacement)
**高优先级 - 立即执行**
1. **主页面替换**
- 文件: `lib/ui/pages/main/main_page.dart`
- 替换为: `lib/ui/pages/main/main_page_shadcn.dart`
- 操作: 删除原文件,重命名 shadcn 版本
2. **登录页替换**
- 文件: `lib/ui/pages/auth/login_page.dart`
- 替换为: `lib/ui/pages/auth/login_page_shadcn.dart`
- 操作: 删除原文件,重命名 shadcn 版本
3. **首页重构**
- 文件: `lib/ui/pages/home/home_page.dart`
- 目标:
- 使用 ShadCard 展示资产概览
- 使用 ShadButton 进行快捷操作
- 使用 LucideIcons 替换 Material Icons
- 添加 flutter_animate 动画
### Phase 3: 功能页面重构 (Feature Pages Refactoring)
**高优先级**
1. **行情页面 (market_page.dart)**
- 币种列表使用 ShadCard
- 价格变化使用 ShadBadge涨绿跌红
- 搜索框使用 ShadInput
- 列表项使用 ShadListTile
2. **交易页面 (trade_page.dart)**
- 买入按钮:绿色 ShadButton
- 卖出按钮:红色 ShadButton.destructive
- 数量输入ShadInputFormField
- 币种选择ShadSelect如果需要
3. **资产页面 (asset_page.dart)**
- 总资产卡片:大号 ShadCard
- 充值/提现按钮ShadButton
- 资金列表ShadListTile
4. **个人中心 (mine_page.dart)**
- 菜单项:统一布局
- 设置项ShadSwitch
- 退出登录ShadButton.destructive
### Phase 4: 自定义组件创建 (Custom Components)
**中优先级**
创建可复用的业务组件:
1. **CoinCard - 币种卡片**
```dart
// lib/ui/components/coin_card.dart
// 显示币种图标、名称、代码、价格、24h变化
// 使用ShadCard + ShadAvatar + ShadBadge
```
2. **TradeButton - 交易按钮**
```dart
// lib/ui/components/trade_button.dart
// 买入:绿色 ShadButton
// 卖出:红色 ShadButton.destructive
```
3. **AssetCard - 资产卡片**
```dart
// lib/ui/components/asset_card.dart
// 显示:标题、余额、变化
// 使用ShadCard + 大号文本
```
4. **PriceChart - 价格图表**(可选)
```dart
// lib/ui/components/price_chart.dart
// 显示:价格趋势
// 使用CustomPaint + flutter_animate
```
### Phase 5: 注册页面重构 (Register Page)
**中优先级**
- 文件: `lib/ui/pages/auth/register_page.dart`
- 创建完整的注册表单
- 使用 ShadForm + ShadInputFormField
- 添加表单验证
### Phase 6: 动画优化 (Animation Enhancement)
**低优先级**
使用 flutter_animate 添加动画:
1. **页面切换动画**
- 淡入淡出效果
- 滑动效果
2. **列表加载动画**
- 交错淡入
- 滑动进入
3. **交互反馈动画**
- 按钮点击缩放
- 卡片悬停效果
### Phase 7: 主题定制 (Theme Customization)
**可选**
1. **品牌色定制**
```dart
// 在 main.dart 中
const brandGreen = Color(0xFF00D4AA);
const upColor = Color(0xFF10B981);
const downColor = Color(0xFFEF4444);
```
2. **配色方案调整**
- 可选Zinc, Blue, Violet 等
### Phase 8: 验证和测试 (Validation & Testing)
1. **功能验证**
- 运行应用,测试所有功能
- 确保无运行时错误
2. **视觉验证**
- 检查所有页面一致性
- 检查深色模式效果
- 检查动画流畅度
3. **代码验证**
- 运行 `flutter analyze`
- 确保无警告和错误
## 优先级
### P0 - 立即执行
1. 替换 main_page.dart
2. 替换 login_page.dart
3. 重构 home_page.dart
### P1 - 高优先级
1. 重构 market_page.dart
2. 重构 trade_page.dart
3. 重构 asset_page.dart
4. 重构 mine_page.dart
### P2 - 中优先级
1. 创建自定义组件
2. 重构 register_page.dart
### P3 - 低优先级
1. 动画优化
2. 主题定制
3. 性能优化
## 完成标准
- [ ] 所有核心页面已重构为 shadcn 组件
- [ ] 所有按钮使用 ShadButton
- [ ] 所有卡片使用 ShadCard
- [ ] 所有输入框使用 ShadInputFormField
- [ ] 所有图标使用 LucideIcons
- [ ] 统一的间距和颜色
- [ ] 流畅的动画效果
- [ ] 功能验证通过
- [ ] `flutter analyze` 无错误
- [ ] 应用可正常运行
## 注意事项
- ⚠️ **不要修改业务逻辑**
- ⚠️ **不要修改 API 调用**
- ⚠️ **不要修改 Provider 逻辑**
- ⚠️ **不要删除现有功能**
- ⚠️ **每次修改后测试功能**
- ⚠️ **保持代码整洁**
## 工作流程
1. **先读取理解**:阅读现有代码和重构计划
2. **优先替换**:先完成已有 shadcn 版本的替换
3. **逐个重构**:按优先级重构每个页面
4. **创建组件**:提取可复用的自定义组件
5. **持续验证**:每完成一个页面就测试
6. **更新文档**:完成后更新 IMPLEMENTATION_PLAN.md
## 输出格式
创建 `IMPLEMENTATION_PLAN.md`
```markdown
# Monisuo 主题现代化实施计划
## Status
STATUS: BUILDING
## Progress
### Phase 1: Analysis ✅
- [分析结果]
### Phase 2: Core Pages
- [ ] main_page.dart 替换
- [ ] login_page.dart 替换
- [ ] home_page.dart 重构
### Phase 3: Feature Pages
- [ ] market_page.dart 重构
- [ ] trade_page.dart 重构
- [ ] asset_page.dart 重构
- [ ] mine_page.dart 重构
### Phase 4: Custom Components
- [ ] CoinCard 创建
- [ ] TradeButton 创建
- [ ] AssetCard 创建
## Changes Made
[详细记录每个文件的修改]
## Issues Found
[发现的问题]
## Questions
[需要确认的问题]
## Completion
When all tasks are done, update status to:
STATUS: COMPLETE
```
## 开始指令
开始工作:
1. 读取 `../REFACTOR_PLAN.md` 了解已有计划
2. 读取 `specs/theme-modernization.md` 了解规范
3. 读取 `AGENTS.md` 了解项目结构
4. 创建 `IMPLEMENTATION_PLAN.md`
5. 开始执行 P0 优先级任务
Let's modernize the Monisuo Flutter app with a beautiful shadcn_ui theme! 🎨✨