睡大觉中
有笨蛋嘛?
Tailwind CSS 拯救前端
前方高能反应!
写算法中
到底在干嘛?
到底在干嘛?
写算法中
colorfulbird3の宝藏之地
首页项目归档照片墙音乐灵境说说杂谈友链关于
封面

我把 XinghuisamaBlogs 改成了现在这个博客

写作时间:2026-08-08 13:39:19
# 博客
# Next.js
# 二次开发
# 开发记录

前言

折腾了挺长一段时间,这个博客现在总算差不多能用了,所以想简单记录一下它是怎么变成现在这个样子的。

博客最开始用的是 XinghuisamaBlogs 框架。原项目本身已经做得很完整了,有文章、杂谈、说说、相册、友链、评论、AI 助手和本地管理器,界面也是我比较喜欢的玻璃拟态风格。

不过真正自己用起来以后,总会冒出一些新的需求。于是我一边使用,一边修问题、加功能,最后改动的地方比最初预想的多了不少。

1.音乐播放器变成了音乐库

原来的音乐功能主要是填写网易云歌曲 ID。歌少的时候没什么问题,但我的歌单有几百首,一首一首复制肯定不现实,所以我重新做了一套音乐管理页面。

现在可以直接把酷狗或网易云的歌单分享链接粘贴到控制台,一键导入整个歌单。酷狗手机分享出来的短链接也能识别,不需要自己从链接里找歌单 ID。

除了导入歌单,还可以添加酷狗、网易云的单曲,或者上传自己的 MP3、FLAC、WAV 文件,并给歌曲配封面和 LRC 歌词。以后源歌单有变化,也可以点一下“重新同步”,不用重新导入一遍。

这部分还有一个比较重要的处理:有些歌曲会因为版权、VIP 或平台限制拿不到公开播放地址。现在遇到这种情况不会让整个歌单导入失败,而是保留歌名、歌手和封面,并标记为“暂不可播放”。能播的继续播,不能播的以后再补。

音乐的管理入口只放在本地控制台,公开的 Blog 只能播放,不能上传或修改歌单。这样用起来方便,也不会把管理接口暴露在网站上。

2.修了不少控制台的小毛病

做音乐库的过程中,也碰到了几次看起来很莫名其妙的问题:控制台偶尔打开后只有背景,进入音乐库以后回不到其他页面;杂谈明明保存了,页面却没有显示;说说已经删除了,刷新以后又出现,再删一次还提示“文件不存在”。

后来才发现,这些问题有一部分和 Next.js 的 standalone 运行方式有关。打包后的控制台会在 .next/standalone 目录里运行,如果继续使用相对路径,它读取的就不是真正存放文章和杂谈的项目目录。

我给控制台加了统一的内容根目录,让文章、杂谈和说说始终从实际项目目录读取。同时把这些需要随时变化的页面改成动态渲染,避免构建时的旧内容一直被缓存。

启动器也做了一些调整:启动时自动补齐 public 和 .next/static,自动选择前后端端口,并把端口信息交给前端。Windows 下的中文和 emoji 日志也统一用 UTF-8 处理,避免控制台因为编码问题直接崩掉。

3.重新整理了保存和发布流程

之前有一次,我在控制台里写完杂谈,点了“同步 Blog”,结果目标项目里什么也没有。原因其实是内容还停留在待处理队列里,并没有先保存成真正的本地文件。

现在点击“同步 Blog”时,会先把待处理的文章、杂谈、说说、相册等操作写入本地,然后再同步到 Blog 项目。

‍

同步范围也补全了,除了文章和杂谈,还包括说说、关于页、相册、友链、站点配置和音乐库。图片与音乐所在的 public/uploads 使用增量复制,不会每次同步都把以前上传的文件删掉重来。

所以现在更新文章时,不需要重新上传一遍所有音乐。只要音乐文件没有变化,Git 和 Vercel 会继续使用原来的文件。

4.顺手优化了一下性能

这个博客有樱花、萤火虫、草地、弹幕和点击特效,视觉效果很多,但以前每个效果都自己跑动画,页面滚动或切换时比较容易掉帧。

我把一部分粒子效果合并到了 Canvas,并增加了统一的动画调度。高刷新率屏幕上,页面交互依然可以保持流畅,但背景装饰不需要跟着显示器每秒重绘一百多次。

评论区也改成了接近页面底部时再加载,长文章的屏幕外内容会延迟绘制。这样没有删掉原来的视觉效果,但首屏加载和滚动会轻一些。

另外还调整了一些小地方,比如首页的文章、杂谈和照片数量现在可以分别跳到对应页面,不会不管点哪里都进入“关于我”。

最后

现在这个博客和最初的框架相比已经有了不少变化,但整体设计和很多基础功能仍然来自 XinghuisamaBlogs,在这里也感谢原作者的开源分享。我的修改版本继续遵守原项目的 CC BY-NC 4.0 协议。

目前它还算不上完全完工,以后应该还会继续改。比如音乐文件越来越多以后,全部放在 Git 仓库里并不合适,可能会迁移到对象存储;发布流程也可以加上更清楚的进度和错误提示。

不过至少现在,写文章、发杂谈、整理照片和听歌都可以放在同一个地方了。

‍

啊,终于完善了一些自己的想法。

avatar

colorfulbird3

一个在GTI服役的普通无名客,日常接取治安局的任务去清理以骸,最近在跟普罗米修斯学习机器学习和神经网络(bushi)

RECOMMENDED

评论功能进度

2026-08-08 14:49:30

Table of Contents

-- FPS