博客重写记:当 xLog 落幕,掌控欲与爱情同时降临

为什么离开 xLog
近两年,我一直在 xLog 上写博客。xLog 是一个基于区块链的去中心化博客平台,理念很美好,但随着时间推移,它逐渐不再适合我了。
首先,xLog 已经停止开发。 作为开发者,我深知一个不再维护的平台意味着什么——没有新功能、没有 bug 修复、没有性能优化。
其次,平台上充斥着低质量内容。 去中心化的理念固然美好,但缺乏内容审核机制导致内容质量参差不齐。我希望博客是一个纯粹的技术分享和生活记录空间。
最后,也是最重要的——我需要更多定制化功能。 生活发生了一些变化,我发展了一段恋爱关系。这带来了新的需求:我想要一个专属的发言小空间,一个可以承载生活温度的地方。
为什么选择自己开发
离开 xLog 后,我权衡了现成的博客平台(WordPress, Hugo 等)和文档框架(VitePress 等),最终选择了使用 Next.js 从零开发。
混合渲染:静态与动态的平衡
选择 Next.js 是因为它的 App Router 让我可以同时拥有静态和动态的优势。
文章列表和详情页通过静态生成(SSG),构建时就生成好了 HTML,访问速度极快。同时,我又能写 API Routes 来动态更新内容——比如通过 Next.js 的动态 API 端点更新碎碎念内容。
当通过 API 添加新内容后,系统会自动向 GitHub 仓库提交更新,触发 Vercel 重新构建。这种方式让页面访问速度极快,而一两分钟的更新延迟对于博客这种非实时场景完全可以接受。
技术栈亮点
- Next.js 16: 利用最新的 App Router 和 Server Components。
- React 19: 编译器自动优化组件重渲染,无需手动 memo。
- Tailwind CSS v4: 采用 CSS-first 配置,直接在样式文件中定义主题变量。
- OKLCH 色彩空间: 使用感知均匀的色彩模型,让颜色调整更加直观可控。
AI 辅助开发的真实体验
AI 辅助开发确实帮了大忙。这个博客从零到上线大约用了 3-4 天。AI 主要帮助生成重复性的样板内容、调试技术问题、优化细节。但关键决策——比如选择什么技术栈、如何设计架构、UI 细节要求和产品理念——都是我自己做的。
AI 是效率工具,不是替代思考的工具。比如这篇文章,就是我和 AI 一起完成的——我提供想法、基础内容、行文框架和技术判断,AI 帮我整理和润色表达。
设计理念:简约中的温度
在设计这个博客时,我一直在思考一个问题:如何让一个技术博客既保持专业简洁,又能承载生活的温度?
极简主义:黑白灰的克制
博客的主体设计只使用黑、白、灰三种颜色。这种极简不是偷懒,而是克制。 见过太多为了炫技而堆砌功能的项目,最终都因过度复杂而难以维护。好的设计应该做减法,只保留最核心的元素,让读者的注意力集中在内容本身。
但极简不等于冷漠。博客主体和「碎碎念」保持黑白灰的设计,代表着理性和专业;唯一的例外是「Mio 说」——使用粉色作为点缀,代表着温馨和专属。这种设计不仅是视觉上的区分,更是氛围的营造。
体验优化:看得见与看不见的
阅读体验:文章的宽度、行高、字间距都经过仔细调整。合适的行宽(65-75 个字符)、舒适的行高(1.6-1.8)——这些数字背后是科学研究和用户体验的最佳实践。移动端针对不同设备特性做了优化:更大的字体、更大的交互区域、更简洁的导航。
视觉细节:外链自动添加 ↗ 图标,链接使用虚线下划线(悬停时切换为实线),主题切换过渡平滑无闪烁。
内容增强:自动计算阅读时间,使用 Shiki 实现精确的语法高亮,图片自动优化为 WebP 格式。
SEO 优化:自动生成站点地图、Robots.txt、RSS 订阅源,每篇文章自动生成 Open Graph 图片。
这些小心思可能不会被所有人注意到,但我知道它们在那里。就像生活中的很多小事,不需要被看见,但它们让一切变得更好。
特殊的功能设计
碎碎念与 Mio 说:两种记录方式
「碎碎念」用于记录我自己的点滴想法——类似 Twitter 的短内容,可以是早上起床时的灵感,也可以是晚上睡前的感慨。
「Mio 说」则是一个专属空间。这个板块使用粉色作为视觉点缀,在黑白灰的基调上营造温馨氛围。设计初衷是打造一个独立的记录空间,让内容能够被完整保留。
两个板块都集成了 QQ 机器人,直接在 QQ 上发消息就能添加内容——不需要打开电脑,不需要懂技术,随时随地都能记录。这种方式把发布门槛降到了最低,让记录变得像发微信一样简单。
为什么不用数据库
我选择了最简单的方案——用文件存储(Markdown 和 JSON)。
- 简单可靠:纯文本文件,Git 管理版本,无需维护数据库。
- 数据自由:内容完全属于自己,不被任何格式锁定。
- 性能优势:静态生成,访问时直接返回 HTML。
写在最后
从 xLog 迁移到自建博客,不仅是技术上的尝试,更是一次完整的实践。在这个博客的设计中,我发现技术不应该仅仅服务于技术本身。好的设计应该服务于目的,而不是为了技术而技术。
最让我满意的是「Mio 说」页面的设计。每次打开,看到标题和线条上那温暖的粉色点缀,会感觉到这个空间的氛围——温馨、独立、专属。
技术不是最重要的,重要的是你想通过技术实现什么。但掌握技术,能让你更自由地表达。
欢迎访问我的新博客:blog.viki.moe。所有源代码都开源在 GitHub 上。
—— 本文完 ——