RooQuiz Blog

Hello from the publishing API

1 min read

这篇文章不是手写进仓库的,是通过 POST /api/posts 写进 Supabase 的—— 用来验证「程序化写入 → 构建期同步 → 静态产物」这条链路真的通。

它验证了什么

  • MDX 正文落进 blog-content(private bucket)
  • 元数据落进 Postgres 的 posts
  • 配图落进 blog-media(public bucket),并在正文里被引用
  • 构建期 pnpm sync 把两边拉回本地,next build 预渲染成静态页

Completion rate by funnel stage

每一级的完成率。钱几乎全漏在最后一格。

漏斗每一级的流失

环节典型流失通常原因
进入 → 第 1 题20–30%标题承诺了一个分类,而不是一个洞察
第 1 题 → 最后一题15–25%题目太多,且没有进度提示
结果 → CTA50%+结果泛泛,后续动作又和它无关

代码高亮也要验一下

// 幂等:同一份内容重发不会触发多余构建
const contentHash = createHash('sha256').update(mdx).digest('hex')
if (existing?.content_hash === contentHash) return { changed: false }

确认无误后,去 Supabase Dashboard 把这一行从 posts 表删掉即可。

Back to all posts