立项背景:我国正快速步入老龄化,三代同堂家庭里奶奶、爷爷承担买菜做饭主力,却被"今天做什么、怎么做、买什么菜"困扰——现有菜谱 APP 偏年轻态,字号小、层级深、无家庭协作,长辈用不顺手。家有菜单是为长辈设计的买菜做饭助手,用最小操作覆盖"决策—做法—采购"全链路:字号≥16px、操作≤3 步、触控≥44px。已上线,一套 uni-app 代码编译微信小程序、H5、Android、iOS 四端。
核心功能(10 模块,落地为点菜/做饭/我家 3 Tab):
- MENU 决定吃什么:分类浏览、搭配推荐、一周自动排餐(权重+洗牌 21 餐)
- RECIPE 学做菜:菜谱详情、步骤教学、收藏
- SHOP 知道买什么:汇总食材、去重、过滤常备、生成购物清单
- FAMILY 一家一起用:槽位邀请、用餐时间矩阵、实时同步
- FMENU/MRECIPE/RATE:我家收藏、自创菜谱、评价反哺
- DLIB 食谱库:3 万道菜、三库统一本地搜索
- CMS 内容后台:菜谱/食材/营销/财务对账
- OPS 运营:积分、任务领取、积分兑月卡
流程:点菜页选菜→生成购物清单→菜市场边买边勾→照菜谱做菜→饭后评价反哺。家庭:建家庭→邀请码→家人扫码→菜单购物清单实时同步。付费走微信虚拟支付(月卡¥6、年卡¥48),600 积分兑 31 天月卡。
架构:云原生 Serverless 分层,零自建服务器。展示层 uni-app(Vue3+Vite+Pinia+TS)一套代码编译四端,含 15 composables、12 store、23 utils;业务层 8 个 CloudBase 云函数(fn-menu/recipe/shop/family/mrecipe/cms/pay/ops)+19 个共享模块(鉴权、HMAC 签名、虚拟支付);数据层 NoSQL 23 集合+云存储,familyId 隔离,写操作过云函数校验。前端约 4.4 万行、云函数约 3.7 万行;CMS 独立 Web 应用,dev/prod 双环境运行时选择。
我作为全栈独立开发者,独立承担产品、前端、后端、CMS、运营全部开发。552 次提交、203 变更、修复 81 缺陷。产出:16 页面+34 组件;周食谱算法 894 行权重+洗牌引擎,零网络生成 21 餐;三库搜索引擎把 3 万道菜压成 1.08MB 索引,本地二分首屏零等待;微信虚拟支付全链路;双环境隔离靠 envVersion 不可伪造,零误连生产;34 套自动化测试。
难点:1. 云函数裸部署冲环境变量(曾用 --force 修 bug 冲掉云端密钥),固化为 --config-file 部署铁律。2. iOS 输入法丢字:根因父组件 setData 波及 input,抽成组件级隔离子组件。3. 破坏性变更搞崩旧客户端:采用 Expand-Contract 三阶段。4. 823 字符 JWT 密钥误读单字符:脚本提取+md5sum 对比。