案例演示如何串联 Google AI Studio、Sheets、Forms 等工具快速完成创意项目,展示 AI 工具组合的快速迭代价值。
技术栈:Google AI Studio + Google Sheets + Google Forms + Gemini 2.5 Flash-Lite
我们都经历过这样的情形:你有一个不错的社区项目想法,但一想到搭建数据库、配置身份认证、构建后端 API,你就放弃了,连 npm init 都没运行。
这个周末,我决定跳过那些样板代码,直接发布。
我想构建一个社区祷告被——一个数字空间,让人们可以留下祷告或愿望,然后将其缝合成视觉织锦。目标是在泡咖啡的时间内让它运行起来。
下面是我用于在约 5 分钟内构建 prayerwall.club 的"懒人"架构,使用 Google Sheets 作为后端,Gemini 2.5 Flash-Lite 作为内容审核员。
当你需要快速收集用户数据而没有服务器时,Google 生态系统的工具集无与伦比。
1. 数据库与数据导入:Google Forms + Sheets
与其构建 React 表单并处理 POST 请求,我创建了一个 Google 表单。
输入:用户通过表单提交他们的祷告。
存储:响应自动导入到 Google Sheet。
2. API:Sheets CSV 导出
这是我喜欢在黑客马拉松中使用的一个技巧。对于公开的只读数据,你不需要完整的 Google Sheets API(及其 OAuth 舞蹈)。你可以将 sheet 发布到网络,并通过可视化端点访问:
const SHEET_ID = 'YOUR_SHEET_ID';
const URL = `https://docs.google.com/spreadsheets/d/${SHEET_ID}/gviz/tq?tqx=out:csv`;
// 获取并解析
const response = await fetch(URL);
const csvText = await response.text();
// ...将 CSV 解析为 JSON...
砰!一个即时、零延迟的 JSON 端点。
公开的墙的问题在于审核。我不想手动审查每一条留言,但我也不想冒着在祷告墙上被网络暴力内容淹没的风险。
进入通过 Google AI Studio 的 Gemini Flash-Lite。
我需要一个快速且便宜的东西来充当"毒性检查",在将祷告渲染到被子上之前。我用 @google/genai SDK 在前端运行快速健全性检查。
下面是我使用的提示逻辑:
const model = genAI.getGenerativeModel({ model: "gemini-flash-lite-latest" });
const prompt = `
分析以下祷告的安全性。
它将显示在一个公开的、全年龄段社区墙上。
祷告不得包含有毒语言、仇恨言论或暴力内容。
祷告:"${userPrayer}"
返回 JSON:{ "is_safe": boolean }
`;
如果 is_safe 返回 true,该补丁就被缝合到被子上。如果不是,它会被静默丢弃。这增加了一点点延迟,但确保了网站的氛围保持纯净,而不需要我扮演网络清道夫。
对于前端,我不想要一个简单的列表。我想让它看起来像一条被子。
我使用 React 和 HTML5 <canvas> API 来程序化生成每个"补丁"。
哈希:我对祷告文本进行哈希处理以创建唯一的种子。
图案:该种子决定了织物颜色调色板、缝线图案(正弦波)和"织物纹理"(随机化的笔划不透明度)。
这意味着每个祷告都会生成其自身的唯一的、确定性的视觉表示。
这是"企业级"吗?绝对不是。它能扩展到数百万用户吗?可能不能(Google Sheets 有速率限制)。
我们常常让架构的纯正性阻碍我们发布。通过将 Google Sheets 作为后端,并使用轻量级 AI 模型处理本来基本上需要人工审核的逻辑,我在短短几分钟内从"想法"变成了"已部署"。
在 prayerwall.club 上看看实际效果吧。
今天去构建一些有趣的东西。担心迁移到更健壮数据库的事留到以后再说。
有些评论可能仅对已登录的访问者可见。登录以查看所有评论。