--- name: 纸条AI衣橱小程序UI全量重构设计稿 overview: 为「纸条AI衣橱」微信小程序(18 个页面)重新设计一套「杂志风纯白留白 + 毛玻璃悬浮层、纯黑白灰零彩色」的苹果式简约高级 UI,并以单个自包含 HTML 文件交付可点击跳转、tab 可切换、弹窗可开关的高保真交互原型,完整覆盖现有全部功能与全部状态。 design: architecture: framework: html styleKeywords: - 杂志编辑部风 - 毛玻璃浮层 - 零彩色灰阶 - 大留白 - 发丝线分隔 - 衬线大标题 - 悬浮胶囊标签栏 - 苹果级缓动 - 买手店线稿质感 fontSystem: fontFamily: Songti SC / PingFang SC heading: size: 34px weight: 500 subheading: size: 17px weight: 500 body: size: 15px weight: 400 colorSystem: primary: - "#0A0A0A" - "#1C1C1E" - "#2C2C2E" background: - "#FFFFFF" - "#F7F7F5" - "#EFEFED" text: - "#0A0A0A" - "#6E6E73" - "#AEAEB2" functional: - "#E5E5E7" - "#D2D2D7" - "#0A0A0A" - "#AEAEB2" todos: - id: baseline content: 用 [subagent:code-explorer] 核对 18 页区块、状态矩阵与微文案,产出页面清单基线 status: completed - id: design-system content: 建立零彩色设计令牌、双字阶、设备壳、毛玻璃浮层与 SVG 图标衣物线稿组件库 status: completed dependencies: - baseline - id: interaction-core content: 实现栈式路由、标签与分段切换、状态切换器、四类弹层控制器与左侧索引 status: completed dependencies: - design-system - id: flow-closet content: 完成登录、衣橱网格、上传三态与衣物详情四态页面 status: completed dependencies: - interaction-core - id: flow-outfit content: 完成穿搭三段式、穿搭详情、穿搭编辑双视图与 AI 推荐页 status: completed dependencies: - interaction-core - id: flow-share content: 完成运势内页、分享列表、衣柜分享创建三视图与两个分享详情 status: completed dependencies: - interaction-core - id: flow-profile content: 完成我的页、通知列表与通知详情、编辑资料底部抽屉 status: completed dependencies: - interaction-core - id: flow-commerce content: 完成商城双视图与订单页,含支付确认弹窗与待支付倒计时 status: completed dependencies: - interaction-core - id: spec-and-qa content: 补设计规范页,用 [skill:playwright-cli] 逐屏截图走查全链路与状态矩阵 status: completed dependencies: - flow-closet - flow-outfit - flow-share - flow-profile - flow-commerce - id: deploy-preview content: 用 [integration:cloudStudio] 部署原型,产出手机可预览链接 status: completed dependencies: - spec-and-qa --- ## 产品概述 「纸条 AI 衣橱」是一款智能衣橱与穿搭小程序,覆盖衣物管理、AI 穿搭推荐、每日运势、好友分享、会员额度与订单等完整业务。本次对全部 18 个页面做整体 UI 重构,产出可点击走通全流程的单文件交互原型,整体基调为「苹果简约高级」。 ## 核心功能 - 登录与新手礼包引导 - 衣橱:分类浏览、拍照上传衣物(含 AI 识别进度)、衣物详情与 15 项属性编辑 - 穿搭:我的穿搭 / 已收藏 / 社区三段浏览,创建与编辑穿搭,AI 推荐生成与保存 - 运势:星座今日运势、四项评分、幸运色与幸运数字 - 分享:衣柜分享与穿搭分享的创建、查看、只读浏览与失效态 - 我的:资料与额度概览、通知、商城会员与额度包、订单管理 - 全局:5 个底部标签、骨架屏 / 空态 / 异常态、弹窗与底部抽屉、未读红点 ## 视觉要求 - 采用「浅色为底 + 玻璃浮层」:内容区像杂志内页,纯白纸面、衬线大标题、超大留白、发丝分隔线,衣物图片是唯一主角;导航栏、底部标签、弹窗与抽屉用毛玻璃悬浮在内容之上 - 零彩色:完全用黑白灰层次表达信息与状态,唯一色彩来自衣物本身与幸运色 - 页面间可真实点击跳转、标签可切换、弹窗可开关,能像真机一样走完整流程 - 重构不只是换皮,需按产品设计逻辑重排信息架构、层级与交互反馈 ## 技术栈 - 交付物:单个自包含 HTML 文件,路径 `/root/zt-closet-wxmini-frontend/stitch_ai_ui_v2/index.html`(新建目录,不覆盖旧 `stitch_ai_ui/`) - 纯原生 HTML5 + CSS3(CSS 自定义属性设计令牌、Grid/Flex、backdrop-filter、clip-path)+ 原生 ES6 JavaScript,无框架、无构建、无包管理 - 零外部依赖:不使用 Tailwind CDN / FontAwesome / Google Fonts(旧稿的致命问题:离线打开即掉样式),图标全部用内联 `` sprite,字体走系统字体栈 - 图片占位:内联 SVG 灰度线稿(衬衫 / 裤装 / 连衣裙 / 外套 / 鞋 / 包 / 配饰剪影),既离线可用又天然契合零彩色调性 - 验证:用 playwright-cli 以 `file://` 打开原型,逐屏截图并点击走查 ## 实现方案 核心策略:**一套设计令牌 + 一个页面容器 + 一个路由栈 + 一个状态机**,让 18 屏共享同一套视觉与交互内核,避免逐页重造。 1. **设计系统先行**:用 CSS 变量固化零彩色灰阶、衬线/无衬线双字阶、间距刻度、发丝线、玻璃材质、软阴影与统一缓动曲线。所有页面只消费令牌,禁止硬编码颜色。 2. **页面容器**:18 屏写成 `
`,默认 `display:none`,由路由控制显隐;5 个 tab 屏共享同一个底部玻璃 tabBar(提到 screen 之外,随 tab 路由显隐),与真实小程序 `custom-tab-bar` 的共享方式一致。 3. **栈式路由**:`navigate(screen, params)` / `back()`,维护页面栈以支持真实返回;`params` 驱动同一屏的变体(`owner=1|0` 决定穿搭详情是属主态还是访客态、`readonly=true` 决定衣物详情是否隐藏编辑删除、`tab=flow` 决定商城进入额度明细视图)。 4. **状态机**:每屏内用 `data-state`(`skeleton | empty | list | loading | error`)切换,右侧状态切换器直接改这个属性,一套标记覆盖完整状态矩阵,无需为每个状态写重复结构。 5. **统一弹层**:四类 —— Modal(居中玻璃卡)、Sheet(底部抽屉带抓手)、ActionSheet(iOS 底部动作表)、Toast(深色玻璃胶囊),全部由同一 overlay 控制器管理,保证「可开关」。 6. **真实跳转**:所有可点元素声明 `data-nav="clothes-detail"` + `data-params='{"uuid":"c1"}'`,在 `#app` 上做事件委托统一处理,保证能像真机一样点着走。 关键取舍: - **不引 Tailwind CDN**:离线可用 + 杂志风排版需要精确控制字距、行高、发丝线、玻璃透明度,原子类反而增加噪音。代价是 CSS 体积更大 → 用「令牌 + 语义类」收敛,禁止逐页堆裸样式。 - **不引字体 CDN**:中文衬线用 `"Songti SC", "STSong", "Noto Serif SC", serif` 回退栈,拉丁回退 `Georgia`,保证任何环境打开都不掉字。 - **占位图用 SVG 线稿而非图床外链**:后端 `processed_image` 在原型中取不到,外链图会离线失效且引入杂色;灰度线稿的代价是不如实拍图真实,通过大量留白与统一构图补足质感。 - **单文件而非多文件**:用户明确要「单文件可点击交互原型」。代价是文件较大 → 用分节注释 + 页面名前缀类名组织。 性能与可靠性: - 单文件无网络请求,首屏即渲染,无加载抖动。`backdrop-filter` 是唯一较重属性 → 限制每屏玻璃层数量(导航栏 + 底部栏/浮层,最多 2 层),避免大面积模糊导致滚动掉帧。 - 事件委托统一在 `#app` 上,避免 18 屏 × N 元素逐个绑定监听。 - 页面切换只切 `display`,不重建 DOM,保证跳转瞬时响应。 ## 架构设计 ```mermaid graph TD A["原型外壳:左索引 + iPhone 设备框 + 右状态切换器"] --> B["路由层:navigate / back / params 页面栈"] B --> C["页面层:18 个 section.screen + data-state 状态机"] B --> D["浮层层:tabBar / Modal / Sheet / ActionSheet / Toast"] C --> E["组件层:按钮 / 分段 / 胶囊 / 列表行 / 规格行 / 卡片 / 骨架 / 空态"] D --> E E --> F["令牌层:零彩色灰阶 / 双字阶 / 间距 / 发丝线 / 玻璃 / 阴影 / 缓动"] C --> G["素材层:内联 SVG symbol 图标 + 衣物线稿占位插画"] ``` ## 目录结构 ``` /root/zt-closet-wxmini-frontend/ ├── stitch_ai_ui_v2/ # [NEW] 新版设计稿目录(旧 stitch_ai_ui/ 原样保留) │ └── index.html # [NEW] 单文件可点击交互原型,内部按以下分节组织: │ #
│ # 左索引面板:分组(登录 / 核心 Tab / 详情 / 表单流程 / 分享 / 交易 / 规范) │ # 设备框 →
内含 18 个
│ # 共享浮层容器:tabBar + overlay(Modal / Sheet / ActionSheet / Toast) │ # 右状态切换器:skeleton / empty / list / error / loading │ # 底部:色板与字阶规范展示 │ #