我的七年博客折腾史与 Nayuta Theme 的诞生

我的七年博客折腾史与 Nayuta Theme 的诞生

我主页的新主题叫 Nayuta,也是我在咕咕咕两年后终于写出来的个人主页+博客主题。这是一个基于 Astro 6 7 的阅读优先个人主页与博客主题。看到 nayuta 的第一版终于完成后,心中感到些许惆怅。在我自己的心中,它是一份迟到了很久的答卷,也是一个充满回忆的载体。它记录了2019 年那个刚刚小升初、对建站充满好奇的初中生,一路折腾、踩坑、失误、搁置摆烂,直到今天写下这些文字的全过程。

2019 - 2024

算起来,我从折腾网站,到学习 Coding 也有七年之余了(从 2019 年至今)。

我从小就爱玩电脑,小学的时候经常做些 PPT、Excel 等小玩意儿,发发公众号(这是我的黑历史)。不过,那个时候的我,只会使用他人提供的服务。搞一个由我自己提供服务并产生内容的网站,便成了我当初狂热的追求。我学习了购置域名,购置了虚拟主机(没错,那个时候我还搞不清 VPS 和云虚拟主机的区别。不过当时也没任何维运基础,仅作 WordPress 博客,属实是够用了)。我在上面搭建起了我的第一个博客,开启了我长达数年的折腾之路的开关。

接下来的几年里,我折腾了一堆动态博客系统。作为我最初的博客系统 WordPress,我自然非常满意。但随着我编程能力的增加,我逐渐发现了他的臃肿和复杂。这对于我来说,是不可接受的。随着虚拟主机的过期,我自然而然的放弃了 WordPress。

再后来,我又折腾过 Typecho,它轻量简洁,配上各类好看的主题确实不错。甚至我之前还给他写过一个主题(又一个黑历史)。不过问题是他的简洁已经简介到过于简陋了,最终还是抛弃了他。

紧接着转眼就到了 23 年底。那几天我完成了我的个人主页 Lite Page,看着我的主页,我陷入了沉思。回顾了我这么多年的建站经验,我似乎没有一次做过正经的分享技术与生活的个人博客。我下定决心好好建设,真好那段时间我在用 1Panel,作为同一家公司的产品 halo 印入我的眼睛。他默认的前台和后台的确很简约现代却不失风采,很符合我的口味。因此,他也顺理成章地变成了我的博客平台。

刚开始的几天我兴致勃勃,编写了好多篇文章,几乎是一天一更。然后…就没有然后了。因为还在上学,我的文章基本是在半夜手机上编写的,写的我身心疲惫,然后就继续找到理由咕咕咕了。(下面是我用网页时光机的截图。其实我现在的主题也有受这个的启发,虽然其实不多。)

Image of my blog

然而,那时候的我有一个致命的坏习惯—我完全没有养成定期备份数据的习惯。

这些放在我服务器上运行的动态博客,一旦服务器续费忘了过期、主机厂商出故障,亦或者是手贱一不小心 rm -rf 了,同时你没有备份的话,那么恭喜你,你的博客就要和你说再见了。

于是不出意外的,2024 年的某个毫无预兆的日子里,我的垃圾服务器突然爆炸了,我的所有数据一夜之间全部消失。

我编写的那些技术文章等等,就在那一天全部灰飞烟灭(不过也就 6 篇,还好吧,大概。网页时光机找到了两篇,其他的被我的 WAF 拦下了,导致我永远的失去了他。后面可能会补一补吧)。那种心血一夜之间被掏空的难受与沮丧,我相信每一个经历过丢数据的开发者都会感同身受。

这其实已经不是第一次了。只不过前几次搭建博客写的东西都不是很重要,我也没有多么重视。然而这次丢失的,确实我真正花费了心血,几个日夜编写出来的内容。我思考了许久,最终作出了我的选择:去他的动态博客!我决定投入静态博客的怀抱。

2024 暑假

2024 年的暑假,我正式决定拥抱静态博客。静态博客只需要托管在 Github 等平台,理论上来说,只要 Github 不倒闭,或者你不手贱去删除,你的博文就永远不会消失。

那个时候的我年轻气盛,喜欢各种折腾,也因此,博客的主题顺理成章的也就由我自己来手搓了。当时静态网站生成器(我了解的)里无非也就 Hexo, Hugo 这些。当时作为 Go 的忠实拥护者,我自然选择了使用 Hugo 作为我的博客系统。于是乎我立刻投入了 Hugo 主题的开发中。

我给 Hugo 写的主题叫 Grass Theme,基于我最爱的 Vanilla JS(原生 JS),也搞了动态生成颜色等等似乎挺高级的玩意儿,写了很多可自定义的东西。至于演示站的默认颜色,我选择了我开发组的主题色绿色。当时写出来的效果大概长这样(图片由于时间久远可能加载不出来了):

Hugo 主题预览

然而,理想很丰满,编写的过程却极其痛苦。

在折腾了整整一个月后,我几乎被 Hugo 的模板语法搞得心力憔悴。Hugo 的模板语法虽然适用了 Go 语言的 text/template,但这玩意用起来极度别扭:它看起来很像 Go,但你又完全不能把它当正常的 Go 代码来写。各种怪异语法,变量不能随意赋值、复杂逻辑很难拆分小部件……每次想写一个稍微复杂点的逻辑,都得在官方文档和社区里查找折腾半天,写代码的乐趣全被繁重的模板调试消耗光了。(哦不过现在 AI 时代,我反而开始怀念那时候各种地方查找问题答案的时光了)

我写的那叫一个憋屈那叫一个郁闷啊。这都什么年代了,还搞这种破烂模版语法。

就在我对着 Hugo 模板语法身心俱疲的时候,我偶然在技术社区里接触到了 Astro 这个框架。

初见 Astro 的感觉,简直就像是在黑夜里撞见了一辆亮灯的大运。Hexo 和 Hugo 都用了那种远古的模版语法,而 Astro 却使用了非常现代化的 JSX 语法。不仅如此,Astro 还提供了非常优雅的静态生成和动态渲染的支持,以及极其灵活的组件架构(群岛架构)。我当场就被这个电子尤物(?)给深深吸引了。

那一刻,我立马做出了决定:我一定要用 Astro 重新写一个最符合自己想象的个人主题!

2024 - Now

但现实往往不给冲动留出足够的时间。

2024 年的暑假转瞬即逝,暑假一结束,我就正式踏入了高三的门槛。面对铺天盖地的复习题、高考压力和紧张的作息,所有的代码项目和个人兴趣都不得不按下了暂停键。Astro 主题的想法,也只能被默默深埋在脑海里。

等高考结束、顺利迈入大学之后,原本以为终于有大把大把的时间可以挥霍了。然而,我却迟迟没有推进我主题的编写。用 Astro 写主题的想法虽然一直都在,但在很长一段时间里,我依旧选择了咕咕咕(我是鸽子🐦)。

直到最近,随着我升上了大二,看着别人的博客,我终于下定决心,不能再拖了!我找了一段相对完整的深夜,重新打开编辑器,把积攒了 N 年的想法与灵感,一锤一锤地敲成了现实。

这,就是 Nayuta 的由来。

认识 Nayuta

主题的名字 Nayuta,取自平坂读轻小说《如果有妹妹就好了。》(妹さえいればいい。)里的天才小说家——可児 那由多(Kani Nayuta)。

在作品中,那由多对文字创作有着近乎本能的热爱与纯粹。她落笔时旁若无人、不拘一格,字里行间充满了旺盛的生命力。

Nayuta 主题想做的事情非常简单:在紧凑而不局促的布局中,用文字的排布,让读者的注意力集中在内容之上。

Nayuta 采用左中右的页面设计。该灵感实际来自于我上面所提到的 Halo 主题,同时融入了我原先主页 Lite Page 和两年来我所接触一些新的设计理念,最终形成了 Nayuta 主题的视觉风格。

结语

从 2019 年到现在,七年的时间,我经历了很多。我学习并尝试过了从 C++、Go 到 TS、Rust 等一系列不同语言,也见证了开发生态的巨大变迁。但兜兜转转这么久,最让我感到踏实的,依然还是博客这个真正让我开始接触计算机、感受到探索乐趣的原点。

当然,如果你也喜欢这种纯粹、克制、阅读优先的主题,欢迎来我的 GitHub 看看这个项目(并给个小小的 Star,求你了🥺):

GitHub 仓库:yuanzui-cf/nayuta

该主题目前还在继续更新当中,后续会添加更多功能,让搭建和自定义更加方便。

Copyright © 2023-2026 Leo Jia.

Powered by Nayuta. Designed by Leo Jia.