10分钟复刻爆火「死了么」App:vibe coding 实战(Expo+Supabase+MCP)

作者:mCell日期:2026/1/14

视频链接:10分钟复刻爆火「死了么」App:vibe coding 实战

仓库地址:github.com/minorcell/s…

202602

最近“死了么”App 突然爆火:内容极简——签到 + 把紧急联系人邮箱填进去。 它的产品形态很轻,但闭环很完整: 你每天打卡即可;如果你连续两天没打,系统就给紧急联系人发邮件。

恰好我最近在做 Supabase 相关调研,就顺手把它当成一次“极限验证”:

  • 我想看看:Expo + Supabase 能不能把后端彻底“抹掉”
  • 我也想看看:Codex + MCP 能不能把“建表 / 配置 / 写代码”这整套流程进一步压缩
  • 以及:vibe coding 到底能不能真的做到:跑起来、能用、闭环通

结论是:能。并且我录了全过程,从建仓库到 App 跑起来能用,全程 10 分钟

我复刻的目标:只保留“核心闭环”

我没打算做一个完整产品,只做最小闭环:

  1. 用户注册 / 登录(邮箱 + 密码 + 邮箱验证码)
  2. 首页打卡:每天只能打一次,展示“连续打卡 xx 天”
  3. 我的:查看打卡记录 / 连续天数
  4. 紧急联系人:设置一个邮箱
  5. 连续两天没打卡就发邮件(定时任务 + 邮件发送)

页面风格:简约、有活力(但不追求 UI 细节)。

技术栈:把“后端”交给 Supabase,把“体力活”交给 Agent

  • 前端:React Native + Expo(TypeScript)
  • 后端:Supabase(Auth + Postgres + RLS)
  • 自动化:Supabase Cron + Edge Functions Supabase 的定时任务本质是 pg_cron,可以跑 SQL / 调函数 / 发 HTTP 请求(包括调用 Edge Function)。(Supabase)
  • Agent:Codex(通过 Supabase MCP 直接连 Supabase) Supabase 官方有 MCP 指南,并且强调了安全最佳实践(比如 scope、权限、避免误操作)。(Supabase)

我整个过程的体验是:

以前你要在“前端 / SQL / 控制台 / 文档”之间来回切。 现在你只需要把需求写清楚,然后盯着它干活,偶尔接管一下关键配置。

两天没打卡发邮件:用 Cron + Edge Function,把事情做完

这是这个 App 最关键的“闭环”。

方案:每天跑一次定时任务

  • Cron:每天固定时间跑(比如 UTC 00:10)
  • 任务内容:找出“已经两天没打卡”的用户
  • 动作:调用 Edge Function 发邮件

Supabase 官方文档推荐的组合是:pg_cron + pg_net,定时调用 Edge Functions。(Supabase)

你也可以不调用 Edge Function,直接让 Cron 发 HTTP webhook 给你自己的服务。 但既然目标是“不写后端”,那就让 Edge Function 处理就行。

Edge Function:负责“发邮件”

注意:Supabase Auth 的邮件(验证码)是它自己的系统邮件; 你要给紧急联系人发提醒,通常需要接第三方邮件服务(Resend / SendGrid / Mailgun / SES 之类)。

Supabase 文档里也提到:定时调用函数时,敏感 token 建议放到 Supabase Vault 里。(Supabase)

Edge Function(伪代码示意):

1// 1) 查数据库:哪些人超过 2 天没打卡
2// 2) 取紧急联系人邮箱
3// 3) 调用邮件服务 API 发送提醒
4

Cron 每天跑一次就够了: 这个产品的语义不是“立刻报警”,而是“连续两天都没动静”。

MCP + Codex:我觉得最爽的地方

如果你只看结果,你会觉得“这不就是一个 CRUD App 吗”。

但我觉得真正有意思的是过程:

  • 它不仅写前端代码
  • 它还能“像个人一样”去把 Supabase 后台的事情做掉:建表、加约束、开 RLS、写策略、甚至提示你哪里要手动补配置

而 Supabase MCP 的官方定位,就是让模型通过标准化工具安全地操作你的 Supabase 项目(并且强调先读安全最佳实践)。(Supabase)

我这次几乎没写代码,最大的精力消耗其实是两件事:

  1. 把提示词写清楚(尤其是“规则”和“边界条件”)
  2. 对关键点做人工复核(RLS、唯一约束、邮件配置)

我现在会怎么写提示词

我发现 vibe coding 成功率最高的提示词,不insane,反而“啰嗦”:

  • 先写“模块和流程”
  • 再写“数据约束”(每天只能一次、断档怎么处理)
  • 再写“安全策略”(RLS 怎么开)
  • 最后写“验收标准”(做到什么算跑通)

你给得越具体,它越像一个靠谱同事; 你给得越模糊,它越容易“自作主张”。

附录

我这次用的提示词(原文)

1需求:使用expo和supabase开发一个移动端APP: 死了么
2
3## 功能:
4
5### 用户注册:
6
71. 描述:在app进入页面,用户需要输入邮箱和密码以及确认密码,进行注册。
82. 流程:
9   - 使用supabase的auth进行校验,发送验证码注册邮箱到用户邮箱,用户需要在页面输入邮箱中的验证码。
10   - 注册成功之后即可进入app首页
11
12### 首页打卡:
13
141. 描述:用户进入首页,只有一个大大的打卡功能;“今日活着”,点击即可完成打卡功能
152. 流程:
16   - supabase需要记录用户的打卡信息
17   - 打开成功时,提示用户已经“你已连续打卡xx日,又活了一天”
18
19### “我的”
20
211. 用户可以在“我的”页面查看自己的打卡记录,连续打卡时间
222. 用户可以设置紧急联系人,当检测到用户连续两天没有打卡时,会发送一封紧急联系的邮件到紧急联系人邮箱
23
24## 其他:
25
261. 用户每天只能打卡一次
272. 页面简约、有活力
28
29> 你可以使用supabase的mcp进行所有的操作,
30

10分钟复刻爆火「死了么」App:vibe coding 实战(Expo+Supabase+MCP)》 是转载文章,点击查看原文


相关推荐


耗时 8 天,我用 Claude Code 开发了 AI 漫剧 APP,并开源了。
苍何2026/1/5

这是苍何的第 468 篇原创! 大家好,我是热爱编程的苍何。 去年底的时候,我写过 2 篇 AI 漫剧的文章,感兴趣的还挺多的。 也认识了非常多做 AI 漫剧的朋友,我们武汉 AI 圈也举办了 AI 漫剧沙龙,来了超级多的感兴趣的圈友。 听了很多的干货分享,当时脑海中只想快速上手来做漫剧。 但我看了很多的平台目前还只能在电脑 web 上操作,手机随时创作我还没找到什么好的 APP。 当时就有一股冲动,要不自己来尝试搞一个?当我和老婆说这个想法的时候,她说我一定疯了。 为了证明我不是疯子,我还


数据结构(四)————图
旺仔小拳头..2025/12/27

1. 无向图与有向图 1.1 定义 无向图:边是无方向的,用(顶点, 顶点)表示边有向图:边(称为 “弧”)是有方向的,用<弧尾, 弧头>表示方向 2. 连通图 2.1 连通的定义 在无向图中,若从顶点v到顶点w存在路径,则称v到w是连通的。 2.2 连通图的定义 若图中任意两个顶点都连通,则称此图为连通图。 3. 完全图 3.1 定义 具有最多边数的图称为完全图。 3.2 边数公式 无向完全图(n 个顶点):边数最大值为n(n-1)/2。有向完全图(n 个顶点):边数最


OpenAI 甩出王炸:GPT-5.2-Codex 上线,这次它想做你的“赛博合伙人”
墨风如雪2025/12/19

老实说,在 AI 模型像下饺子一样发布的 2025 年年底,大家对“颠覆性升级”这个词早就脱敏了。但 OpenAI 刚刚在 12 月 18 日悄悄放出的 GPT-5.2-Codex,还是让不少熬夜写代码的工程师虎躯一震。 这不仅仅是 GPT-5.2 的一个微调版本,更像是一次针对程序员痛点的“精准爆破”。如果说以前的 AI 是帮你补全代码的实习生,那么这次上线的 Codex,更像是一个能扛事儿的“高级合伙人”。 我花了一点时间扒了扒这背后的技术细节和实测数据,有些东西确实值得聊聊。 告别“金鱼


Cursor 又偷偷更新,这个功能太实用:Visual Editor for Cursor Browser
张拭心2025/12/11

凌晨 1 点,我正要关电脑睡觉,屏幕左下角突然弹出一个弹窗: Cursor 又上新功能了?带着好奇我仔细看了下文档:cursor.com/cn/docs/age… 我去,这个功能很重磅啊! 这次更新的 Visual Editor for Cursor Browser 是一个打破“设计”与“编码”边界的重磅功能,它让 Cursor 不仅仅是编辑器,更是一个“能直接写代码的浏览器”。 核心价值 它解决了前端开发中最大的痛点——“在浏览器里调好了样式,还得手动回代码里改”。 现在,我们可以像在 Fi


AI 计算模式(上)
兔兔爱学习兔兔爱学习2025/12/1

经典模型结构设计与演进 神经网络的基本概念 神经网络是 AI 算法基础的计算模型,灵感来源于人类大脑的神经系统结构。它由大量的人工神经元组成,分布在多个层次上,每个神经元都与下一层的所有神经元连接,并具有可调节的连接权重。神经网络通过学习从输入数据中提取特征,并通过层层传递信号进行信息处理,最终产生输出。这种网络结构使得神经网络在模式识别、分类、回归等任务上表现出色,尤其在大数据环境下,其表现优势更为显著。 对一个神经网络来说,主要包含如下几个知识点,这些是构成一个神经网络模型的基础组件。


多标签页强提醒不重复打扰:从“弹框轰炸”到“共享待处理队列”的实战
_Jude2026/1/22

场景:我在多标签页里“接力”处理紧急待办 这篇文章讨论的不是“消息列表怎么做”,而是紧急待办的强提醒体验应该如何落地。我的核心需求很明确: 紧急消息必须强制弹框提醒(不能靠用户自己去小铃铛里找) 弹框不能手动关闭,只能通过“去处理/已读”等业务动作逐条消解 刷新后仍要继续弹:只要还有“高优先级且未处理”的消息,就必须再次弹框 多标签页不重复打扰:同一时间只允许一个标签页弹;未处理的消息能跨标签页接力,不丢失 ✅ 问题 1:多标签页重复强弹(“弹框轰炸”)💥 现象 A 中点“去处理”打开

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 XYZ博客