CatCat/Cat需求文档.md
2026-02-09 16:08:55 +08:00

8.8 KiB
Raw Permalink Blame History

《Draw a Cat 小程序复刻项目需求规格说明书》

V1.0 版本

文档目的:明确小程序复刻 Draw a Fish 网站的核心目标、功能范围、技术要求、交互规范及上线标准,为产品设计、开发、测试及验收提供统一依据。 适用范围产品经理、前端开发、后端开发、测试工程师、UI设计师及项目相关负责人。 核心目标:复刻 Draw a Fish 网站“手绘猫+AI识别+虚拟猫咖互动”核心玩法适配微信小程序生态实现无门槛创作、AI实时识别、动态跑动、全球/个人猫咖互动功能,兼顾易用性与性能稳定性。

一、项目基础信息

1.1 产品名称

手绘猫乐园(暂定名,可优化调整)

1.2 产品定位

免费、无门槛的微信小程序,主打 AI 互动手绘体验,面向全年龄段用户,提供“画猫-识别-领养-互动”的完整流程,兼具创意释放与轻社交属性。

1.3 核心参考

复刻原型Draw a Fish 官网(https://drawafish.com/),核心功能及交互逻辑对齐原网站,适配小程序操作习惯做本土化调整

二、核心功能需求

2.1 手绘画布模块

2.1.1 基础绘图功能

  • 支持画笔粗细调节:提供 3-5 档可选(建议范围 2px-10px默认中等粗细5px
  • 支持颜色选择:至少提供 7 种基础颜色(红、橙、黄、绿、蓝、紫、黑),默认红色,选中颜色有明显视觉标识。
  • 支持橡皮擦功能:切换橡皮擦模式后,可清除画布内容,橡皮擦粗细固定为 20px适配手绘场景便于快速修正
  • 支持清空画布:提供“清空”按钮,点击后弹出二次确认提示,确认后清除全部绘制内容,恢复初始画布状态。

2.1.2 画布交互优化

  • 画布尺寸:适配手机屏幕,建议宽 300-350px高 400-450px居中展示周边预留工具栏空间。
  • 绘制体验触摸绘制线条流畅无卡顿、断点线条端点圆润lineCap 设为 round提升手绘质感。
  • 实时反馈:画布背景随绘制过程实时轻微变色(参考原网站效果),给予用户视觉反馈。

2.2 AI 猫形识别模块

2.2.1 识别核心逻辑

  • 实时计算相似度绘制过程中AI 实时判断手绘内容与“猫形”的相似度以百分比0%-100%)展示在画布底部,保留一位小数。
  • 识别阈值:相似度 ≥ 60% 时“生成跑动猫”按钮激活60% 时按钮置灰,提示“再画一画更像猫哦”。
  • 识别优化:优先识别“猫头朝右”的绘制内容(参考原网站规则),提升识别准确率;支持不同风格手绘猫(简笔画、卡通等)。

2.2.2 识别结果处理

  • 达标反馈相似度达标后背景色定格为明亮色调按钮文案为“Make it Run!(生成跑动猫)”,点击后进入猫名输入环节。
  • 不达标反馈:相似度持续低于 60% 时,提示用户调整绘制内容(如“尝试画完整的猫头和猫身”)。

2.3 动态猫生成与跑动模块

2.3.1 猫信息设置

  • 猫名输入:识别达标后,弹出输入框,允许用户输入猫名(限 1-10 个字符支持中英文、数字禁止特殊符号默认生成随机名称如“小猫XXX”
  • 确认提交:输入猫名后点击“确认领养”,将手绘猫转为动态跑动效果,同时保存至数据库。

2.3.2 跑动动画效果

  • 动画逻辑:保留手绘猫的原始轮廓、颜色,实现左右跑动、轻微摆尾摆耳的动态效果,跑动速度均匀(可微调,避免过快/过慢)。
  • 边界处理:猫跑动至画布边缘时,平滑穿越边界从另一侧出现,循环跑动,无卡顿、跳跃。
  • 视觉优化:动态猫带有轻微阴影效果,提升层次感,与猫咖背景区分开。

2.4 猫咖互动模块

2.4.1 全球猫咖

  • 作品展示:默认进入全球猫咖页面,展示所有用户提交的动态猫,按提交时间倒序排列,最多同时展示 20 只猫(避免性能压力),支持下拉刷新加载更多。
  • 互动功能:每只猫下方显示猫名、相似度、点赞数,支持用户点击“点赞”“点踩”(同一用户对同一只猫仅可操作一次),点赞数实时更新。
  • 排行榜提供“热门猫排行榜”入口按点赞数倒序排列展示Top50作品显示猫名、作者匿名/昵称)、点赞数、相似度。

2.4.2 个人猫咖(需登录)

  • 登录方式支持微信一键授权登录获取用户OpenID作为唯一标识无需注册额外账号。
  • 作品管理:个人猫咖页面展示当前用户提交的所有猫作品,支持查看详情(猫名、创建时间、相似度、点赞数)、删除作品。
  • 收藏功能:支持收藏全球猫咖中的优质作品,收藏后在个人中心“我的收藏”中查看。

2.5 个人中心模块

  • 基础信息:展示用户头像(微信授权头像)、昵称(微信授权昵称),支持修改昵称(限 1-8 个字符)。
  • 作品统计:显示用户累计提交猫作品数量、总点赞数、收藏数量。
  • 功能入口:提供“我的作品”“我的收藏”“热门排行榜”“关于我们”入口。
  • 帮助中心:包含“画猫技巧”“识别规则”“常见问题”,指导用户使用(如“猫头朝右更易通过识别”)。

易用性需求

  • 无门槛操作:无需登录即可完成“画猫-识别-领养”核心流程,登录仅用于个人作品管理、收藏功能。
  • 视觉引导:工具栏图标、按钮文案清晰,操作流程有明确视觉引导(如颜色选中标识、按钮状态变化),新手用户可快速上手。
  • 错误提示:操作错误(如输入非法字符、识别失败)时,提示文案简洁易懂,给出解决方案。

4.3 兼容性需求

  • 设备兼容:适配 iOS、Android 主流手机机型,不同屏幕尺寸下画布、工具栏布局自适应,无变形、错位。
  • 微信版本兼容:支持微信 7.0.0 及以上版本,低版本提示用户升级微信。

4.4 可维护性需求

  • 代码规范前后端代码遵循行业规范添加必要注释便于后期迭代、bug 修复。
  • 接口设计:后端接口统一规范,预留扩展字段,便于后续新增功能(如分享、评论)。
  • 日志记录:后端记录关键操作日志(用户登录、作品提交、识别结果、报错信息),便于问题排查。

五、交互与UI需求

5.1 整体风格

延续原网站极简、清新风格,主色调采用暖色系(贴合猫的柔软温馨主题),辅助色为白色、浅灰色,避免复杂装饰,聚焦手绘与互动功能。

5.2 核心页面交互

  • 首页:默认展示“手绘画布”模块,顶部为标题,底部为工具栏(颜色、粗细、橡皮擦、清空),画布下方显示相似度及激活按钮。
  • 猫咖页面:顶部为“全球猫咖/个人猫咖”切换标签,中间为动态猫展示区域,底部为“返回手绘”“排行榜”按钮。
  • 个人中心:采用列表式布局,各功能入口清晰,图标与文字搭配,视觉简洁统一。

5.3 反馈交互

  • 操作反馈:按钮点击有触觉反馈(微信原生震动),加载状态显示加载动画(如转圈图标),避免用户重复操作。
  • 结果反馈:点赞、删除、提交作品后,实时显示反馈文案(如“点赞成功”“作品已删除”),持续 1-2 秒后消失。

六、上线与验收标准

6.1 上线前置条件

  • 功能完整性所有核心功能实现无缺失、无严重bug致命、严重级别bug为0
  • 性能达标:启动速度、绘制流畅度、响应时间符合本需求文档要求。
  • 合规性:通过微信小程序审核,内容审核机制正常运行,无隐私合规风险。
  • 测试验收:完成功能测试、兼容性测试、性能测试,测试报告合格。

6.2 验收核心指标

  • 功能指标:手绘、识别、跑动、猫咖互动、个人中心功能均正常运行,操作流程无阻塞。
  • 性能指标启动速度、绘制流畅度、AI识别响应时间达标并发场景下无异常。
  • 兼容性指标:在指定机型、微信版本下,页面布局、功能无异常,无闪退、卡顿。
  • 用户体验:新手用户可在 1 分钟内完成“画猫-识别-领养”全流程,操作无困惑。

七、迭代规划(可选)

V1.0 版本(核心功能版)

实现手绘、AI 模板匹配识别、动态跑动、全球猫咖、个人猫咖基础功能,满足核心玩法。

V1.1 版本(优化升级版)

升级 AI 识别模型EasyDL新增作品分享微信好友、朋友圈、评论功能优化动画效果。

V1.2 版本(功能扩展版)

新增猫皮肤、道具系统,支持用户自定义猫的装饰;新增主题猫咖,提升社交互动性。