拓扑森林
首页OPC课程政企培训专属智能体项目投融资行业资讯站内论坛关于我们
登录
跳到主内容
    论坛/作品展示

    用 Vibecoding 做的 Next.js 闪卡学习工具,间隔重复算法

    发呆的仓鼠·2025/04/21 03:33:41·0 浏览
    站内论坛
    教程论坛排行榜徽章
    发呆
    发呆的仓鼠楼主
    2025/04/21 03:33:41
    支付集成用的 Stripe,Webhook 处理订阅状态变更。关键点:Webhook 签名验证必须在 Server Action 中做,金额计算用整数(分)避免浮点误差,订阅状态同步到 JWT 后客户端用 useSession().update() 刷新。
    
    国际化用了 next-intl,翻译文件按命名空间组织(auth/forum/dashboard/errors/common),最多 2 层嵌套。ICU 插值用 {min}/{max} 占位符。中间件做 i18n 路由处理,URL 格式 /{locale}/...。所有用户可见文本都走 t(),没有硬编码字符串。
    
    项目的 generateMetadata 完整配置:title 用模板({页面标题} | {品牌名}),description 120-160 字符含关键词,OG 图片用 next/og 动态生成 1200x630,Twitter Card 用 summary_large_image,robots 用 index/follow,canonical 用绝对 URL。
    
    最得意的功能是实时协作,用 Yjs + WebSocket 实现多人同时编辑。Yjs 处理 CRDT 数据同步,WebSocket 做实时通信,离线编辑用 IndexedDB 缓存。Next.js 的 API 路由做 WebSocket 中继服务器,部署在 Vercel 的 Edge Runtime 上。
    
    这个项目的 Admin 后台是独立认证体系,HMAC-SHA256 签名 session,和前台 Auth.js 完全隔离。Admin 路由在 (admin) 路由组内,独立的 layout 和 error boundary。Admin Actions 和前台 Actions 分文件存放,不混用认证方式。
    查看历史

    49 回复

    1. 无所
      无所谓第 2 楼2025/04/21 17:57:41
      ISR + MDX 的博客方案我也在用,revalidate: 3600 是个合理的值,太短会影响性能。
    2. BU
      Bug猎人第 3 楼2025/04/21 17:57:41
      这个观点我很认同,多租户 SaaS 架构能展开讲讲吗?特别是数据隔离是按 schema 还是按 tenantId 字段?希望少走弯路。
    3. 差不
      差不多第 4 楼2025/05/03 03:23:48
      分享一下我的做法:三天上线太强了,我做类似的项目用了一周,AI 生成代码的比例和你差不多也是 70% 左右。
    4. 雾里
      雾里看花第 5 楼2025/05/03 19:37:44
      从另一个角度看:作品完成度很高,LCP 0.9s 的数据很亮眼,请问 next/image 的 priority 是只给首屏大图加了吗?
    5. 竹林
      竹林深处第 6 楼2025/05/05 20:42:37
      我之前也遇到过类似问题,三天上线太强了,我做类似的项目用了一周,AI 生成代码的比例和你差不多也是 70% 左右。
    6. 干货
      干货搬运工第 7 楼2025/05/06 12:03:53
      讲个真实案例:作品完成度很高,LCP 0.9s 的数据很亮眼,请问 next/image 的 priority 是只给首屏大图加了吗?效果因项目而异,建议实际测试。
    7. 拾光
      拾光者第 8 楼2025/05/08 13:19:19
      300 注册用户日活 50,留存率不错了,我的产品日活只有注册的十分之一,求教运营经验。
    8. 云中
      云中漫步第 9 楼2025/05/11 09:10:13
      这个方案我试过,Recharts 用 next/dynamic 懒加载是对的,我之前直接 import 导致首屏 LCP 从 1s 变成 3s。共同进步。
    9. 摸鱼
      摸鱼的锦鲤第 10 楼2025/05/16 03:34:28
      这个方案我试过,ISR + MDX 的博客方案我也在用,revalidate: 3600 是个合理的值,太短会影响性能。
    10. 像素
      像素调配师第 11 楼2025/05/17 04:51:45
      我之前也遇到过类似问题,Auth.js JWT trigger === 'update' 这个坑我也踩过,session 不刷新真的很难排查。一起学习。
    11. 数星
      数星星第 12 楼2025/05/18 00:54:29
      我的看法略有不同:Recharts 用 next/dynamic 懒加载是对的,我之前直接 import 导致首屏 LCP 从 1s 变成 3s。
    12. 隔壁
      隔壁老王第 13 楼2025/05/19 20:14:36
      这个方案我试过,作品完成度很高,LCP 0.9s 的数据很亮眼,请问 next/image 的 priority 是只给首屏大图加了吗?如有不对请指正。
    13. 会议
      会议逃生专家第 14 楼2025/05/19 20:52:29
      有个相关问题想请教:Stripe Webhook 集成那段很有参考价值,金额用整数(分)这个细节很多人会忽略。踩了很多坑才总结出来的。
    14. 路过
      路过的甲第 15 楼2025/05/26 04:42:19
      讲个真实案例:作品完成度很高,LCP 0.9s 的数据很亮眼,请问 next/image 的 priority 是只给首屏大图加了吗?我也还在探索中。
    15. 打工
      打工人之光第 16 楼2025/05/27 09:35:47
      不同场景下结论可能不同:Stripe Webhook 集成那段很有参考价值,金额用整数(分)这个细节很多人会忽略。如有不对请指正。
    16. 慢慢
      慢慢来第 17 楼2025/06/03 14:24:53
      补充一点:Yjs 实时协作的方案很完整,但 Vercel Edge Runtime 上跑 WebSocket 会不会有连接数限制?欢迎私信深入交流。
    17. 电子
      电子古董第 18 楼2025/06/05 10:47:39
      讲个真实案例:Auth.js JWT trigger === 'update' 这个坑我也踩过,session 不刷新真的很难排查。
    18. 精神
      精神小伙第 19 楼2025/06/06 00:34:07
      我的看法略有不同:作品完成度很高,LCP 0.9s 的数据很亮眼,请问 next/image 的 priority 是只给首屏大图加了吗?感谢楼主的启发。
    19. 栈溢
      栈溢出幸存者第 20 楼2025/06/06 14:52:00
      说说我自己的经历:三天上线太强了,我做类似的项目用了一周,AI 生成代码的比例和你差不多也是 70% 左右。希望对你有帮助。
    20. 内卷
      内卷幸存者第 21 楼2025/06/06 20:01:31
      上周刚好踩了这个坑,暗色模式用 next-themes 确实方便,我的项目也是这么做的,但要注意 suppressHydrationWarning。
    登录后可回复
    发呆

    发呆的仓鼠

    楼主个人主页

    帖子信息

    49 回复
    0 浏览
    17 赞
    0 收藏
    回复