chore(trellis): archive 04-30-product-website task

This commit is contained in:
qzl
2026-04-30 13:38:44 +08:00
parent 1519c782c7
commit 99f053a5ff
2 changed files with 4 additions and 4 deletions
@@ -0,0 +1,150 @@
# PRD: Product Website & Privacy Policy for App Store
## 1. 需求概述
为 MeeYao Divination (觅爻签问) iOS 应用创建一个产品技术网站,满足 Apple App Store 审核对 Support URL 和 Privacy Policy URL 的要求。
**核心目标**:
- 提供 App Store 审核所需的公开网站(Support URL + Privacy Policy URL
- 展示产品信息,建立可信度
- 隐私政策页面完整、合规
## 2. 背景与合规要求
### App Store 审核要求
- **Guideline 1.5**: app 和 Support URL 必须包含方便用户联系的方式
- **Guideline 2.1**: 提交审核时所有 URL 必须完整可用,不接受占位内容或空网站
- **Guideline 5.1**: 涉及个人数据收集的 app 必须提供隐私政策,且链接在 App Store Connect 中填写
- **App Store Connect**: 自 2018 年 10 月起,所有新 app 和更新必须填写 Privacy Policy URL
### 当前状态
- 应用隐私政策文本已存在: `apps/assets/legal/{en,zh,zh_Hant}/privacy_policy.md`
- 应用服务条款已存在: `apps/assets/legal/{en,zh,zh_Hant}/terms_of_service.md`
- 关于我们已存在: `apps/assets/legal/{en,zh,zh_Hant}/about_us.md`
- 但尚无公开可访问的网站托管这些内容
## 3. 技术方案
### 3.1 技术栈
- **纯静态 HTML/CSS/JS** (无需构建工具或框架)
- **Tailwind CSS** via CDN(快速样式开发)
- **单页面应用**:两个路由通过 hash 路由或简单文件切换实现
- 部署为静态文件,可托管在任何静态托管服务上
### 3.2 文件结构
```
web/
├── index.html # 产品主页 (Support URL 指向此页面)
├── privacy.html # 隐私政策页 (Privacy Policy URL 指向此页面)
├── assets/
│ ├── logo.png # 应用 Logo (从 apps/assets/images/logo.png 复制)
│ ├── icon-1024.png # App Store 图标 (从 iOS AppIcon 复制)
│ ├── css/
│ │ └── style.css # 自定义样式覆盖
│ └── js/
│ └── main.js # 交互逻辑(语言切换等)
└── README.md # 部署说明
```
### 3.3 路由设计
| 路由 | 对应 App Store 字段 | 用途 |
|------|---------------------|------|
| `/` (index.html) | Support URL | 产品介绍、功能说明、联系方式 |
| `/privacy.html` | Privacy Policy URL | 完整隐私政策文档 |
## 4. 页面设计要求
### 4.1 产品主页 (index.html)
**定位**: Support URL 落地页,用户从 App Store 点击"支持"后到达此页。
**内容板块**:
1. **Hero 区域**: 应用名称、Logo、一句话描述
2. **产品介绍**: MeeYao 是什么 - AI 辅助六爻文化参考工具
3. **核心功能**: 手动起卦、自动起卦、AI 解读、历史记录
4. **文化背景**: 六爻与易经文化简介
5. **免责声明**: 娱乐和文化参考用途声明
6. **联系方式**: 开发者邮箱 ann@xunmee.com
7. **页脚**: 版权信息、隐私政策链接、服务条款链接
**设计风格**:
- 与 App 视觉语言一致:紫色品牌色系 (#673AB7, #9C27B0)
- 安静、可信、温暖的视觉基调
- 响应式设计,移动端优先
- 无多余动画,保持简洁专业
### 4.2 隐私政策页 (privacy.html)
**定位**: Privacy Policy URL 落地页,满足 App Store Connect 要求。
**内容**:
- 直接使用已有的英文隐私政策文本(面向全球用户)
- 结构化展示:信息收集、使用方式、数据存储、用户权利等
- 包含最后更新日期
- 顶部导航回到主页
**设计风格**:
- 干净的文档阅读体验
- 清晰的标题层级
- 与主页一致的配色和字体
## 5. 素材来源
| 素材 | 来源路径 | 目标路径 |
|------|----------|----------|
| 应用 Logo | `apps/assets/images/logo.png` | `web/assets/logo.png` |
| App Store 图标 | `apps/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png` | `web/assets/icon-1024.png` |
| 隐私政策文本 (EN) | `apps/assets/legal/en/privacy_policy.md` | 转为 HTML 内容 |
| 隐私政策文本 (ZH) | `apps/assets/legal/zh/privacy_policy.md` | 参考用 |
| 服务条款 (EN) | `apps/assets/legal/en/terms_of_service.md` | 参考用 |
| 关于我们 (EN) | `apps/assets/legal/en/about_us.md` | 参考用 |
## 6. 品牌配色 (来自 visual_design_language.md)
- Primary Purple: `#673AB7`
- Accent Purple: `#9C27B0`
- Light Purple Surface: `#F0E6FF`
- Background Gray: `#F8F8F8`
- Text Dark: `#333333`
- Text Medium: `#666666`
- Text Light: `#999999`
- Tag Gold: bg `#FFF8E1`, text `#FFB300`
## 7. 实现步骤
### Phase 1: 项目初始化
- [ ] 创建 `web/` 目录结构
- [ ] 复制素材资源(logo、图标)
- [ ] 准备隐私政策 HTML 内容
### Phase 2: 设计与实现
- [ ] 使用 UI skill 设计主页布局
- [ ] 实现 index.html 产品主页
- [ ] 实现 privacy.html 隐私政策页
- [ ] 实现响应式适配
### Phase 3: 验证
- [ ] 浏览器测试页面渲染
- [ ] 移动端响应式验证
- [ ] 验证所有链接可点击
- [ ] 确认隐私政策内容完整
## 8. 验收标准
1. 两个 HTML 文件均可直接在浏览器中打开,无构建依赖
2. 产品主页包含:应用名称、Logo、功能描述、免责声明、联系方式
3. 隐私政策页包含:完整的英文隐私政策文本、更新日期、联系方式
4. 移动端和桌面端均可正常浏览
5. 配色与 App 视觉语言一致
6. 所有图片资源本地可用(无外部依赖)
## 9. 不做的事
- 不做多语言切换(英文为主,满足 App Store 全球审核)
- 不做后端服务、表单提交
- 不做 SEO 优化(仅满足 App Store 审核)
- 不做域名配置/部署(仅产出静态文件)
- 不做服务条款独立页面(在主页底部简要链接即可)
@@ -0,0 +1,44 @@
{
"id": "04-30-product-website",
"name": "04-30-product-website",
"title": "Product Website & Privacy Policy for App Store",
"description": "",
"status": "completed",
"dev_type": null,
"scope": null,
"priority": "P2",
"creator": "zl-q",
"assignee": "zl-q",
"createdAt": "2026-04-30",
"completedAt": "2026-04-30",
"branch": "dev",
"base_branch": "dev",
"worktree_path": null,
"current_phase": 0,
"next_action": [
{
"phase": 1,
"action": "implement"
},
{
"phase": 2,
"action": "check"
},
{
"phase": 3,
"action": "finish"
},
{
"phase": 4,
"action": "create-pr"
}
],
"commit": "9866f94",
"pr_url": null,
"subtasks": [],
"children": [],
"parent": null,
"relatedFiles": [],
"notes": "",
"meta": {}
}