时光沉淀 刻下来的幸福时光

我用 AI+Cloudflare,零成本搭了个开源博客!附项目地址​

最近被大模型的代码生成能力惊艳到了 —— 不仅能写单文件脚本,居然能撑起一整个博客系统的开发!

更惊喜的是,结合 Cloudflare 的免费服务,我直接实现了 “几乎零成本” 的博客部署,还把项目开源了。

今天就来聊聊这个从构思到落地的全过程,想低成本搭博客、玩 AI 开发的朋友,或许能找到灵感。​

一、为什么要做这个项目?—— 零成本 + 高灵活的刚需​

其实我早就想搭个个人博客,但一直卡在两个点:

要么是付费服务器太贵(每年几百块不算多,但 “能不花就不花” 是程序员的本能),

要么是现成模板不够灵活(想加个 “瞬间” 功能、改个评论逻辑都要大动干戈)。​

直到最近体验了 Claude 4.5 的代码生成能力

—— 我随手丢了个 “用 Cloudflare Workers 做博客 API” 的需求,它居然能直接输出带数据验证、权限控制的代码片段;

再加上 Cloudflare 全家桶的免费额度( Workers 每天 10 万次请求、D1 数据库免费 1GB、R2 存储免费 10GB、Pages 无限静态托管),突然意识到:零成本搭一个灵活可控的博客,居然可行!​

二、核心构思:把 Cloudflare 的免费资源 “榨干”​

既然目标是 “零成本”,那整个架构必须围绕 Cloudflare 的免费服务展开。我梳理了一套 “全 Cloudflare” 的技术栈,每个环节都用免费资源扛住:​

功能模块​
技术选型​
核心优势(免费版)​

后端 API​

Cloudflare Workers​
10 万次 / 天请求,全球边缘节点​

数据库​

Cloudflare D1​
1GB 存储,SQL 语法兼容,支持事务​

媒体文件存储​

Cloudflare R2​
10GB 存储,无出站流量费(重点!)​

前端托管​

Cloudflare Pages​
无限静态页面,自动 CDN 加速​

内容辅助生成​

Cloudflare AI​
免费生成文章 slug、摘要(省了调用第三方 API 的钱)​

可能有人会问:“为什么不用 Astro、Next.js 这些框架?” 其实我初期也试了 Astro,但发现它和 Cloudflare Workers 的适配需要额外配置,反而不如直接用 React+Workers 的组合灵活 —— 毕竟我的核心需求是 “快速迭代”,而 AI 生成 React 组件、Workers 接口的效率,比折腾框架适配高多了。​

另外,关于 API 风格,我特意选了 “类 WordPress 的 RESTful 风格”。

理由很简单:它太通用了。不管是后续加插件、对接第三方工具(比如评论系统、统计工具),还是未来交给其他开发者维护,熟悉 WordPress API 的人都能快速上手,不用重新学习一套自定义接口规则。​

三、AI 是如何帮我 “加速” 开发的?—— 从需求到代码,效率翻 10 倍​

整个项目开发周期不到一周,其中 80% 的代码都是 AI 生成的,我只做了 “需求拆解” 和 “细节调整”。这里分享几个 AI 帮我省了大量时间的场景:​

1. 后端 API:从 “描述需求” 到 “可运行代码”​

比如我要做 “文章创建接口”,只给 Claude 4.5 丢了这样的需求:​

“用 Cloudflare Workers + D1 数据库写一个文章创建 API,需要支持标题、内容、分类、标签字段,还要做用户认证(JWT),标题不能超过 100 字,内容不能为空,返回格式要和 WordPress REST API 兼容。”​
不到 1 分钟,它就输出了完整的代码:包括 D1 的 SQL 插入语句、JWT 验证逻辑、字段长度校验,甚至还加了 “防止重复提交” 的 timestamp 检查。我只需要把代码里的 “数据库表名”“JWT 密钥” 换成我的配置,直接部署到 Workers 就能用 —— 这要是自己写,至少要查半小时 D1 的文档、JWT 的验证逻辑,现在全程不超过 10 分钟。​

2. 前端组件:从 “画草图” 到 “可交互界面”​

我给 AI 发了张手绘的 “文章编辑页” 草图(就是用画图工具画了个标题输入框、富文本编辑器、分类下拉框),并补充需求:“用 React+Tailwind CSS 实现,富文本编辑器用 TinyMCE,分类下拉框要加载 D1 数据库里的分类数据,保存按钮点击后调用刚才的创建 API,还要加加载状态提示。”​

同样很快,AI 输出了带状态管理(useState/useEffect)、API 调用(fetch)、样式美化的组件代码。我只需要调整一下颜色和布局,就能无缝集成到前端项目里 —— 不用再查 Tailwind 的类名、TinyMCE 的 React 适配方法,省了大量 “查文档” 的时间。​

3. 辅助功能:让 Cloudflare AI “打工”​

最惊喜的是 Cloudflare AI 的集成。我需要自动生成文章的 “slug”(比如把 “我的 AI 博客” 转成 “my-ai-blog”)和摘要,直接调用 Cloudflare 的免费 AI 模型:​
Slug 生成:用@cf/meta/llama-3-8b-instruct模型,输入标题就能输出 URL 友好的 slug;​
摘要生成:用@cf/openai/completions模型,输入文章内容,指定 “生成 100 字以内摘要”,秒出结果。​
这一步完全不用自己写算法,也不用付第三方 API 的钱,直接用 Cloudflare 的免费额度搞定,体验拉满。​

四、目前已实现的功能:满足个人博客的 “全需求”​

经过一周的迭代,现在这个博客系统已经有了完整的功能闭环,完全能满足个人使用:​
内容管理:文章的创建 / 编辑 / 删除 / 查看,支持 Markdown 和富文本两种编辑模式;​
媒体管理:图片、附件上传到 R2 存储,支持预览、删除,自动生成缩略图;​
用户系统:基于 JWT 的认证,支持管理员、作者两种角色(权限细分);​
分类与标签:文章可以添加多个分类、多个标签,支持分类排序、标签云展示;​
评论系统:支持游客评论(需邮箱验证)、管理员回复 / 删除,评论内容存储到 D1;​
“瞬间” 功能:类似微博的短内容发布,支持配一张图,单独展示在 “瞬间” 页面;​
系统设置:可配置博客标题、副标题、logo、首页展示样式等基础信息。​
这些功能里,除了评论系统的 “邮箱验证” 需要对接 Cloudflare Email Routing(也是免费的),其他都是基于前面说的技术栈实现的,全程没花一分钱。​

五、开源地址 & 后续计划​

目前这个项目已经开源到 GitHub,名字叫「cfblog」,地址是:

https://github.com/jkjoy/cfblog​

里面包含了完整的代码(前端 + 后端)、部署文档(一步一步教你怎么部署到 Cloudflare)、数据库表结构 SQL,即使是新手也能跟着文档搭起来。​

如果大家有兴趣,也欢迎提 Issue、PR,一起把这个 “零成本博客” 做得更完善~​

最后:一点小感悟​

这次用 AI+Cloudflare 开发博客,最大的感受是:“技术的门槛正在快速降低,但‘把需求拆解得更清晰’的能力越来越重要”。​
以前写代码,要自己记语法、查文档、调 bug;现在有了 AI,只要能把 “我要做什么”“需要满足什么条件” 说清楚,AI 就能帮你生成基础代码。而像 Cloudflare 这样的免费服务,又进一步降低了 “从代码到产品” 的落地成本 —— 只要你有想法,现在真的能 “零成本” 把它变成现实。​

如果你也想搭个个人博客,或者想试试 AI 开发,不妨去 GitHub 上拉一下项目代码,跟着文档部署看看~ 有任何问题,也可以在评论区和我交流~

By 浪子 On