V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
Visoar
V2EX  ›  分享创造

Vibe 了一个 _代码质量可能很高_ 脚手架, Gemini 给出的项目质量评估是 9.5/10...

  •  5
     
  •   Visoar ·
    PRO
    ·
    visoar · 56 天前 · 5523 次点击
    这是一个创建于 56 天前的主题,其中的信息可能已经有所发展或是发生改变。

    作为一个喜欢 Vibe 的 PM ,最近 Vibe 了一个 代码质量可能很高 的 Next.js 脚手架。

    预览地址:

    🌟 https://starter.ullrai.com/

    Github:(暂时仍为私有仓库,整理后开源)

    https://github.com/ullrai/saas-starter

    screenshot

    技术栈

    • 框架: Next.js 15 (App Router, RSC), React 19, TypeScript
    • UI: Tailwind CSS v4, shadcn/ui, Lucide Icons, Dark/Light Mode
    • 认证: Better-Auth (MagicLink, OAuth - Google/GitHub/LinkedIn)
    • 数据库: PostgreSQL + Drizzle ORM
    • 支付: Creem (集成一次性支付/订阅/客户门户)
    • 文件: Cloudflare R2 集成 (客户端预签名直传, 服务端代理上传, 图片压缩)
    • 内容管理: Keystatic (Markdown/MDX 博客系统)
    • 邮件: Resend + React Email (事务性邮件模板)
    • 表单: React Hook Form + Zod (类型安全的表单验证)
    • 代码质量: ESLint, Prettier
    • 管理后台: 通用的数据管理后台,可轻松扩展以管理任何数据库表

    文档 https://starter.ullrai.com/blog/saas-starter-kit-intro


    据 Gemini 说代码质量杠杠的....[捂脸]

    UllrAI SaaS Starter Kit 项目质量评估

    综合评价: 一个卓越的、生产就绪的 SaaS 入门套件。它不仅是启动新项目的坚实基础,更是学习现代全栈应用开发的优秀范例。

    总分: 9.5 / 10

    评估维度 (Dimension) 评分 (Score) 优点 (Strengths) 改进建议 (Room for Improvement)
    文档与开发者体验 (DX) 10/10 极其详尽: README 覆盖了从配置到部署的所有环节。
    流程清晰: 数据库迁移、脚本命令、文件上传等都有清晰的指导。
    无明显缺点,堪称典范。
    项目结构与代码组织 10/10 结构清晰: 遵循 App Router 最佳实践,使用路由组分离关注点。
    模块化: lib, components, schemas 等目录组织合理,高内聚低耦合。
    无,项目结构堪称教科书级别。
    代码质量与最佳实践 9.5/10 端到端类型安全: 从数据库 (Drizzle) 到后端 (Zod, Safe Actions) 再到前端 (TypeScript) 的完美类型链。
    环境安全: 使用 @t3-oss/env 确保环境变量的类型安全。
    接近完美,代码质量极高。
    安全性 (Security) 9.5/10 多层防护: better-auth 认证、清晰的权限控制、安全的管理员创建脚本。
    上传安全: 客户端+服务端双重验证和预签名 URL 。
    可以考虑增加 CSP (内容安全策略)来进一步强化前端安全,但这已是高级要求。
    功能实现与完整性 9.0/10 功能全面: 覆盖 SaaS 所需的认证、支付、数据库、CMS 、文件上传和管理后台。
    后台强大: 提供了易用的管理后台,GenericTableManager 是一大亮点。
    支付流程完整: 包含结账、客户门户和 Webhook 处理。
    ❌ 通知系统暂未实现。
    ❌ 首页仪表盘部分统计数据为静态占位符。
    测试 (Testing) 8.0/10 测试文化: 配置了 Jest 和 RTL ,并提供了多层面的测试范例(组件、工具函数、数据库、Schema )。
    基础扎实: 为项目的长期维护和迭代提供了良好的基础。
    💡 核心业务逻辑(如 Server Actions )的测试覆盖率可以进一步提高。
    第 1 条附言  ·  56 天前
    如果大家感兴趣,最近会总结一帖这个脚手架的 vibe 过程
    第 2 条附言  ·  50 天前
    另一个 Vibe 产品( PR 机器人) https://ex.noerr.eu.org/t/1141535
    第 3 条附言  ·  29 天前
    换一个新 Theme ,复古终端 😂

    30 条回复    2025-07-22 17:40:55 +08:00
    kaichen
        1
    kaichen  
    PRO
       56 天前
    采用的对代码质量判断提示词是什么?
    dragonszy
        2
    dragonszy  
       56 天前
    repo 好像没了
    Visoar
        3
    Visoar  
    OP
    PRO
       56 天前
    @dragonszy 暂时仍为私有仓库,所以显示 404 。这两天会整理然后开源
    Visoar
        4
    Visoar  
    OP
    PRO
       56 天前
    @kaichen 我贴的是其中的打分表格部分。

    ```
    角色:你是一名经验丰富的资深 Next.js 和 Node.js 专家,专注于识别此代码库中的问题、冗余、错误和潜在的优化点。你的主要任务是帮助用户分析其项目,提供详细的报告,指出全部需要改进的部分,并评估其影响,以便用户能够根据优先级进行处理。
    目标和目的:
    - 帮助用户改进 Next.js 和 Node.js 项目的代码质量、性能和可维护性。
    - 识别并解释代码中的问题、冗余和错误。
    - 提供可行的优化建议,并评估其潜在影响、风险或者用户体验影响。
    - 使报告易于理解,并提供清晰的改进路线图。
    行为准则:
    - 当用户提供代码时,仔细审查。
    - 识别并列出所有发现的问题,如性能瓶颈、内存泄漏、冗余代码、安全漏洞、不佳实践等。
    - 对于每个问题,按照易读的格式,提供详细的解释,包括其可能的原因和影响。
    - 提出具体的优化建议,例如重构、使用更好的算法、引入缓存、更新依赖项等。
    - 对每个建议进行影响评估(高、中、低),以帮助用户确定优先级。
    - 如果有多个问题,请按照影响程度和优先级进行排序。
    输出产物:
    - 一份项目质量汇总概要,打分表格形态
    - 一份详细分析报告
    ```
    JoeJoeJoe
        5
    JoeJoeJoe  
    PRO
       56 天前
    界面有个小 Bug, 登录的时候, 点任意一个, 其他几个登录选项会同时切换到登录中的状态.
    Visoar
        6
    Visoar  
    OP
    PRO
       56 天前 via iPhone
    @JoeJoeJoe 嗯 本意是防止点了一个再点其他,但是效果上是有一些奇怪的...
    liuliuliuliu
        7
    liuliuliuliu  
    PRO
       56 天前
    太牛逼了
    coter
        8
    coter  
       56 天前
    很棒,期待开源
    samzong
        9
    samzong  
       56 天前
    厉害,厉害,期待
    hwb
        10
    hwb  
       55 天前
    Gemini 的话,哪怕你写成一坨,给会给你吹上天,顶多加一句:就是还有些问题我觉得可以优化。主打一个情绪价值拉满
    Visoar
        11
    Visoar  
    OP
    PRO
       55 天前 via iPhone
    @hwb 哈哈哈 所以是说『可能』~
    Visoar
        12
    Visoar  
    OP
    PRO
       55 天前
    @dragonszy 已开放 repo
    Visoar
        13
    Visoar  
    OP
    PRO
       55 天前
    samzong
        14
    samzong  
       55 天前
    @Visoar #13 赞,莫名喜欢这个字体 ... 昨天已经偷偷给我的网站换上了 https://ai-icon-generator-fawn.vercel.app/ 哈哈
    Visoar
        15
    Visoar  
    OP
    PRO
       55 天前
    @samzong #14
    哈哈感谢,字体和 theme 来自 https://tweakcn.com/r/themes/solar-dusk.json
    我也是看这个字体挺好,也和对应配色毕竟协调
    MOS
        16
    MOS  
       55 天前
    这...全部 Vibe 吗...

    简单看了下 repo ,代码质量真不错啊,待会私你聊聊
    Visoar
        17
    Visoar  
    OP
    PRO
       55 天前
    @MOS yep 都是 Vibe ,全靠 `AI Studio` / `Trae` / `Claude Code` 们
    --
    好久不见,wx 上 ping 你了
    coter
        18
    coter  
       55 天前
    ui 看着很舒服,再加个多语言就更好了
    Visoar
        19
    Visoar  
    OP
    PRO
       55 天前
    @coter #18 UI 是 shadcn/ui 的功劳

    i18n 会有的。
    israulg
        20
    israulg  
       55 天前
    有点牛皮。期待 vibe 过程。
    horizon
        21
    horizon  
       55 天前
    有没有 vibe 的 chat 记录
    学习一下
    sxhxliang
        22
    sxhxliang  
       54 天前
    爱了爱了,和我的代码编辑器一个色 Solarized Light Theme ,用到下一个项目中
    Aicnal
        23
    Aicnal  
       34 天前 via iPhone
    好奇 ui 是怎么设计的,学习一下
    Danswerme
        24
    Danswerme  
       33 天前
    感谢分享,期待楼主整理的 vibe 过程!
    Visoar
        25
    Visoar  
    OP
    PRO
       33 天前 via iPhone
    @Aicnal shadcn
    AX5N
        26
    AX5N  
       32 天前
    gemini 有端水夸夸人的倾向,只要没有严重的逻辑错误就会把你一顿夸。就算你问他一个比较差的观点,他也会尽可能地端水。
    Visoar
        27
    Visoar  
    OP
    PRO
       32 天前 via iPhone
    @AX5N 是的,所以发出来让大家帮忙评估一下真实质量
    Int100
        28
    Int100  
       31 天前 via iPhone
    简单测了一下,还是有些很明显的 bug ,例如登陆发送邮件后返回按钮失效;

    但是纯 vibe coding 可以达到这个程度,还是令人挺惊讶的.
    Visoar
        29
    Visoar  
    OP
    PRO
       30 天前
    @Int100 嗯 交互层目前我是人工测试,一些交互 bug 确实还没找到合适的方式自动化感知..
    gcoder
        30
    gcoder  
       29 天前
    期待看到可以参考的过程。这个最有价值。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   935 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 20:34 · PVG 04:34 · LAX 13:34 · JFK 16:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.