
一个提示词生成完整应用
前端开发者最头疼的问题之一,就是后端逻辑的实现。数据库设计、API 接口、用户认证……每一项都需要时间和经验。市面上的 AI 代码工具大多只能生成 UI 组件,遇到后端就"哑火"了。
Convex 团队开源的 Chef 项目提供了不同的解决思路。输入一句话描述,它能生成包含前后端完整逻辑的可运行应用。这个项目目前在 GitHub 已有 2800+ star,值得关注。
主要功能特性
完整的技术栈支持
Chef 基于 Convex 平台开发,提供了从前端到后端的完整能力:
数据库层面
- 自动创建数据表和索引
- 支持关系查询和复杂过滤
- 实时数据订阅机制
业务逻辑层面
- 类型安全的查询函数(Query)
- 数据变更函数(Mutation)
- 外部 API 调用(Action)
应用层面
- 零配置用户认证
- 文件上传存储
- 定时任务调度
类型安全的开发流程
React + TypeScript 全栈:https://yunpan.plus/t/197-1-1
这是 Chef 的核心优势。它利用 TypeScript 的类型系统,在代码生成过程中:
- 定义数据库 Schema 时自动生成类型
- 编写业务函数时进行类型检查
- 前端调用时获得完整的类型提示
当生成的代码存在问题,编译器会给出明确的错误信息,AI 会根据这些反馈自动修复。这种机制让它能处理更复杂的业务场景。
实时数据同步
基于 Convex 的响应式架构,生成的应用天然支持实时更新。一个用户修改数据,所有在线用户立即看到变化,不需要手动配置 WebSocket。
技术实现方式
代码示例:待办事项应用
定义数据结构
// 数据库 Schema
export default defineSchema({tasks: defineTable({text: v.string(),isCompleted: v.boolean(),userId: v.id("users"),}).index("by_user", ["userId"]),
});
查询函数
export const list = query({handler: async (ctx) => {const identity = await ctx.auth.getUserIdentity();return await ctx.db.query("tasks").filter((q) => q.eq(q.field("userId"), identity.subject)).collect();},
});
前端调用
const tasks = useQuery(api.tasks.list);
三段代码就实现了带用户隔离的任务列表功能,类型完全自动推导。
工作流程
Chef 的运行分为三个阶段:
- 初始化:创建 Vite + React 项目模板,集成 Convex 配置
- 生成:AI 根据提示词生成代码,遵循 Convex 最佳实践
- 验证:运行类型检查,根据错误反馈迭代优化
这个循环会持续到代码通过编译检查。
实际应用案例
社区开发者用 Chef 构建了多个实用项目:
习惯追踪器
包含任务管理、完成记录、数据统计图表等功能。前端使用 Recharts 展示数据,后端自动处理统计逻辑。
协作笔记应用
类似 Notion 的实时编辑体验。多人同时编辑时,光标位置和内容变化实时同步,还能显示当前在线用户。
AI 视频平台 Cinemartie
开发者 Hyo Jang 在黑客松活动中完成的项目,集成了视频上传、AI 处理、存储管理等完整流程。他提到开发效率提升了 4 倍。
使用建议
根据 Convex 团队总结的经验:
提示词编写
- 首次描述核心功能,后续迭代添加细节
- 明确说明配色方案和界面风格
- 控制在 300 字以内,避免信息过载
开发流程
- 从最简单的版本开始,逐步增加功能
- 遇到生成结果不理想时,及时回退到上一个版本
- 可以用 ChatGPT 等工具优化提示词表达
适用场景
- 快速原型验证
- 中小型业务系统
- 学习全栈开发流程
对于大型系统或有特殊性能要求的项目,仍需要人工介入优化。
技术生态
Chef 采用 Apache-2.0 开源协议,代码托管在 GitHub。开发者可以自行部署或基于源码定制。
Convex 平台本身也提供了向量搜索、Agent 工作流等 AI 能力,适合构建更复杂的智能应用。
项目局限
需要注意几点:
- 生成的代码质量依赖提示词准确性
- 复杂业务逻辑可能需要多次迭代
- 目前主要支持 React 技术栈
- 大规模应用需要额外的性能优化
总体来说,Chef 适合快速验证想法和构建中小型应用。它证明了 AI 工具在理解业务逻辑方面的潜力,也为全栈开发提供了新的思路。
关注「异或Lambda」,获取更多开源项目和技术实践分享
📌 项目信息
GitHub 仓库:
https://github.com/get-convex/chef
Star 数:2.8k+
开源协议:Apache-2.0
🌐 相关资源
技术文档:
https://docs.convex.dev
TypeScript项目实战:https://yunpan.plus/t/376-1-1
标签:#Chef #Github #AI编程 #全栈开发 #开源工具 #TypeScript #实时应用