关于本站
「墨 · 码」是一个基于 Astro 开源主题 Quiet Pages 构建的个人博客,用来记录 Web 开发过程中的学习与思考。

为什么建立这个站点
写作的过程本身也是一次学习。当能够把一个知识点完整地梳理并表达出来时,往往意味着自己已经真正理解了它。相比把知识零散地收藏在各个平台,我更希望把它们沉淀成一套能够持续完善、不断迭代的内容体系。
最初搭建博客的原因,与其说是为了“记录”,不如说是为了“自由”。在第三方平台写作,内容虽然属于自己,但排版、交互、主题风格都受平台限制。对于前端开发者而言,这始终有些遗憾。于是,我萌生了自建站点的念头:版式、字体、配色、交互,每一处细节都可以按照自己的心意去打磨,让网站真正成为一个属于自己的创作空间。
为了找到自己喜欢的风格,我也尝试过不少优秀的 Astro 主题,例如: Astro Wind、Bit Doze、ThoughtLite、Astro Rocket 等。每一款都有自己的特点,但随着时间推移,也逐渐产生了审美疲劳,我总会忍不住尝试新的设计与交互,虽然过程难免耗时,但也乐在其中。
最近,我发现了 Quiet Pages。它极简、克制,把注意力更多地留给内容本身,这正是我想要的方向。于是,我决定以它为基础进行二次开发,希望让它既保留简约的设计风格,又更符合自己的审美和使用习惯。
与此同时,我也将此前散落在不同平台和旧博客中的文章陆续迁移到这里。这个站点不仅是一套主题,更是一个持续演进的个人知识库。未来,我也会继续打磨它,不断完善内容与功能,让它陪伴自己学习、记录与成长。
视觉设计
相比复杂华丽的设计风格,我更倾向于保持页面的简洁,并将更多的精力放在阅读体验与交互细节上。因此,整个站点采用了更为克制的设计语言,尽可能减少视觉干扰,让注意力回到阅读本身。
为了让页面在简洁之中保留一些趣味性,我引入了 Rough Notation,在部分标题与重点内容中加入手绘标注效果,在不破坏整体克制风格的前提下,为页面增加一点轻微的视觉点缀。
同时,本站也提供了一定程度的外观自定义能力,让访客可以根据个人偏好调整视觉体验,目前支持:
- 明暗主题切换
- 主题配色切换
- 首页背景切换
- 背景纹理切换
页面过渡
除了页面设计,我也比较关注浏览过程中的连贯性。
本站使用 Astro 的 ClientRouter 实现页面过渡,在页面切换时保留整体的浏览上下文,减少传统网页跳转带来的割裂感,使站点拥有更接近单页面应用的浏览体验。
内容归档
随着文章数量逐渐增加,仅依靠分页浏览会变得越来越低效。相比常见的时间轴形式,日历归档提供了一种更具结构感的浏览方式。
时间轴本质上仍是线性列表,当内容增多后,只能不断向下滚动,逐条查找。而日历以网格的方式组织时间,让写作的密度、停更的间隔与节奏变化都变得可视化,不仅是“先后顺序”,更能直观呈现博客的成长轨迹。
为此,本站提供了月视图、年视图与列表视图三种归档方式:
- 年视图用于回顾全年整体写作节奏
- 月视图用于按月份查看内容的更新情况
- 列表视图保留传统时间轴结构,适合按顺序逐篇浏览与回顾
评论交流
本站评论系统基于 Giscus 构建,评论数据存储于 GitHub Discussions,无需额外的数据库即可完成评论功能。
为了让评论区能够与站点整体风格保持一致,我没有使用 Giscus 提供的默认主题,而是重新设计了评论样式,并将主题文件托管在 GitHub,通过 jsDelivr 进行加速访问,从而确保评论区在视觉上与博客整体保持统一。
除了评论区之外,本站还在联系页面提供了邮件发送功能。该功能基于 Resend 构建,访客可以直接通过站内表单发送邮件,无需跳转至第三方邮箱客户端。
如果文章中存在错误、遗漏,或有更好的实现方式,欢迎在评论区交流讨论。
关于性能
相比复杂的动态博客系统,我更倾向于静态优先的设计思路。
本站基于 Astro 的 Island Architecture(孤岛架构)构建,大部分页面以静态 HTML 输出,仅在需要交互的组件中加载客户端 JavaScript,从而降低资源消耗,提高首屏加载速度。
部署方面,站点依托 Cloudflare 全球边缘网络进行内容分发,并结合 Cloudflare Workers 与优选节点方案优化访问链路,尽可能提升不同地区用户的访问体验。
版权声明
本站所使用的部分资源来自公开或开源渠道,具体说明如下:
- 字体使用 Google Fonts 提供的开源字体资源
- 首页 Hero 背景图来源于 Lorem Picsum
- 背景纹理来源于 Transparent Textures
- 文章封面图由 AI 工具生成
如相关资源存在侵权或不适宜使用的情况,可联系我进行处理。
技术栈
本站主要使用以下技术构建,在保证阅读体验的同时,也尽可能追求页面性能与访问速度。
- Astro、React
- TypeScript
- Tailwind CSS
- Lenis
- Rough Notation
- Giscus
- Resend
- Leaflet
- Cloudflare Workers
未来计划
目前还有许多想法正在逐步实现:
- 更完善的主题系统
- 阅读统计与数据可视化
- 文章关系图谱
- 更丰富的交互动画
这个站点不会刻意追求内容数量,而是希望持续积累真正有价值的内容。如果某篇文章恰好帮助到了你,那么这个博客就已经实现了它存在的意义。
感谢你的到来,也欢迎以后常来看看。