惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Schneier on Security
Schneier on Security
C
Cisco Blogs
Help Net Security
Help Net Security
I
Intezer
Simon Willison's Weblog
Simon Willison's Weblog
Know Your Adversary
Know Your Adversary
Hacker News: Ask HN
Hacker News: Ask HN
Cisco Talos Blog
Cisco Talos Blog
A
Arctic Wolf
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
WordPress大学
WordPress大学
小众软件
小众软件
Jina AI
Jina AI
量子位
T
Threatpost
Forbes - Security
Forbes - Security
L
LINUX DO - 最新话题
S
Securelist
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
C
Cyber Attacks, Cyber Crime and Cyber Security
有赞技术团队
有赞技术团队
博客园_首页
T
Threat Research - Cisco Blogs
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
The Exploit Database - CXSecurity.com
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Scott Helme
Scott Helme
博客园 - 【当耐特】
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
月光博客
月光博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
大猫的无限游戏
大猫的无限游戏
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
The Last Watchdog
The Last Watchdog
Attack and Defense Labs
Attack and Defense Labs
Google DeepMind News
Google DeepMind News
阮一峰的网络日志
阮一峰的网络日志
SecWiki News
SecWiki News
博客园 - 叶小钗
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
罗磊的独立博客
The Cloudflare Blog
S
Schneier on Security
爱范儿
爱范儿
N
News and Events Feed by Topic
NISL@THU
NISL@THU
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

别年

基于 Cloudflare Workers 部署博客 AI 摘要服务 1% 尝试用 AI 重构 Folo Transform 的使用体验 怎么就八月了 Waline 配置 Resend 邮箱提醒 Cloud Mail:基于 Cloudflare Workers、Resend 的自有域名邮箱服务搭建 免疫系统的劫数 摸黑向前:瞎练之后瞎吃 優しい雨が降りますように 天津|挑战陌生的开端 免费企业邮箱:Gmail、Resend 邮件代发配置 落笔于向日葵花开的谷雨尾声 付鹏:未来三五年最确定的投资机会(20250413) 使用 ClawCloud Run 部署 AList Vercel 重定向与 Google Search Console 地址更改 咸阳印象:关中秦风的千年回响 速回博客问卷 记于春分李树花开一刻 借助 Algolia DocSearch 实现站内搜索 新手父母避坑指南:0-3岁育儿用品、疫苗与经历
博客主题个人巧思
Xuesong · 2026-03-25 · via 别年

博客主题是基于 Gyoza 逐渐引入我个人的想法、需求产生的,整体风格并没有大的改变,但很多需求化层面的东西也把这个博客主题引入了另行的方向。比如原作者并未引入的 Lucide ,因为我认为方便,便被我无耻的引入替换了原有 icon 方案;再比如作者放弃的 algolia 搜索方案,也被我无情的按照自己的意愿重新启用,又按照我的喜好,做了调整;再比如,我无理的引入了一套割裂项目的 AI 摘要解决方案,从静态博客硬生生掺合了边缘计算的逻辑……

所以,我还是介绍一下,这款看着外观相同,其实内在有不小差异的新项目 Gyoza

变化

你可以对比本项目和原始项目的 Package.json ,关键框架都做了迁移, Astro 5、Tailwind CSS 4、React 19 是最大的调整。

主观上最大的变化,是主题色彩方案,原项目的动态变换的色彩方案,在我迁移 Tailwind CSS 4 上时,选择了放弃。虽然可以继续保留,但是就在迁移的时候,觉着完全拥护 Tailwind CSS 4 会是更好的选择。对于觉着原项目的动态色彩方案更讨喜的,这套方案可能并不符合你需求。

在这里,给大家道歉了!

对不起,我是一个喜新厌旧,但是会全情投入新感情,不过也会随时拥抱下一个的渣人。

巧思

首页首屏

中心区域左侧文字、右侧头像,文字部分的交互动效是比较直观的,但是右侧头像被我加入了点击破碎的效果,在头像后隐藏了一句话和一张图片。我是有够无聊的!

首屏下方的两行文字也做了动效,目前英文动效要好过中文动效。

具体调整,可以在配置文件的 Author 和 hero 子项中。

页脚做了整个重构,做了左右分栏,将 Dark 切换融合到了整体风格中,而且加了动效!

Footer

左侧文字,不是多少天,而是多少晨光、多少晴曛等,这些融合了天文学时间的概念,而且将网站作为一个生命个体看待,你就需要维护网站上线时的时间以及经纬度,之后根据访问者的本地时间进行计算到底是晨光还是别的。具体可以查看 RunningDays.tsx

我确实忘了我当时怎么想的,所以我问了 Gemini:

这段代码首先读取配置,计算出网站从首发上线至今的累计运行天数。

接着,它将访客的本地时间转换为网站所在时区,并利用坐标推算出当前精确的天文学时间段(例如“破晓”或“暮光”)。

最后,它将天数与当前天文状态拼接在一起,在页面上渲染出类似于“100 次破晓”的动态文本。


再说右侧,右侧是手写字体的一句话和落款,可以多留几句,然后每次构建会选择其中一句进行构建,这个和右侧的动态文本逻辑不同。

解释下为何要这么做,在构思 footer 部分的时候,上方文章卡片和右侧分类是非对称设计,页面整体重心在左侧,原方案的居中方式的页脚,在我看来有些别扭,所以也做了左右拆分(也尝试过三栏、四栏方案),当左侧内容固定时,右侧就出现需要填充的内容,右下角天生就是一个落款角落,从单薄的名字、日期到一句话与名字的转化就逐渐成型。


Light/Dark 功能,随着页脚内容的调整,这个小功能的位置也就成了很大的问题,居中?居右?

右侧是返回顶部的区域,两个功能区不能很好的融合时,冲突感、误操作概率就会增加,选择居中位置,就会让一个简单的单次使用的轻量功能承载过重的重量,所以最后选择了左侧,前文、页脚交接的缝隙中。

还考虑过和顶部搜索组合成顶部功能区的方案,彻底摒弃 Footer 区域的占位。

配置项在 footer 部分。

照片墙

性能拉跨的瀑布流!

照片墙

原本要设计成根据 EXIF 数据动态读取然后渲染信息的方式的,但是原生照片的大小、质量制约很大,所以就成了人力维护结构化信息,渲染结构化数据的方案。

这部分只有基础的页面数据维护,在 gallery 部分。剩余的是 Json 结构的数据维护。

评论系统

评论系统依然采用了外接的 waline,通知部分的 Bug 不知道修了没有,但是没有替换的想法,只是做了样式的适配,具体可以看 waline.css。就在我截图的时候,我发现,他搞了个突兀的 RSS 订阅的东西,抓狂!

waline

我得把这个烦人的 RSS 干掉了。

总体上来说这些还是低侵入的调整,剩下两个比较麻烦的配置项在 Algolia 检索功能、AI 摘要,晚些补充。