博客搭建
这里记录了我搭建博客的全过程, 如果你也想搭建一个和我一样的博客, 非常推荐阅读

YukiLog - 14 - 从 Astro 到 SvelteKit:一次不留退路的前端迁移
整个前端推倒重来。不是渐进式的,不是并行运行的——删掉旧代码,换上新框架。这篇记录为什么要迁移、怎么迁移、以及过程中踩的坑

YukiLog - 12 - 精选文章:一个字段的全栈旅程
主页不应该显示所有文章——有些文章只是草稿性质的记录,不适合放在首屏。于是加了一个 is_featured 字段,从数据库一路走到前端

YukiLog - 10 - 删掉 SCSS,构建速度快了十倍
移除 SCSS 预处理器之后,本地构建从 18 秒降到 1.7 秒。这篇讲的是为什么能删,以及 CSS 变量系统是怎么替代它的

YukiLog - 8 - 一个文件管理所有配置
把散落在组件里的硬编码字符串赶到一个地方——这篇讲的是 yukilog.config.ts 的设计思路,以及它现在管的有点太宽的问题

YukiLog - 6 - Handler 层
Service 层的函数写好了,但前端不认识 Rust 函数。这篇讲的是如何把函数变成接口,以及这个过程里藏着哪些意想不到的复杂性

YukiLog - 4 - Repository 层
ORM 打通了后端与数据库的信道,但我们不想让 SQL 的影子渗透到整个项目。本篇介绍 Repository 层如何在这里竖起一道墙

YukiLog - 2 - 数据库设计
一个博客系统需要存什么、怎么存?本篇设计了支持无限嵌套评论、标签分类、友链管理的数据库结构,以及完整的部署流程

YukiLog Markdown 格式解析测试
这一篇博客用于预览 YukiLog 的文章样式

YukiLog - 13 - 随记系统:从「再加一个表」到独立内容形态
博客文章太重了——标题、slug、摘要、封面图、主题分类、标签、评论、阅读计数。有些想法只想写三行字配个心情。于是我给 YukiLog 加了一种新的内容类型

YukiLog - 11 - Tailwind 的故事,以及那个圆角问题
移除 Tailwind 只花了两个提交,但文章卡片的圆角问题修了很久——这篇讲的是为什么删,以及 GPU 合成层和 overflow:hidden 之间的冲突

YukiLog - 9 - 静态优先,但不是真的静态
Astro 默认生成静态页面,但 YukiLog 几乎所有页面都标记了 prerender: false——这篇讲的是为什么,以及 View Transitions 带来的一个隐藏问题

YukiLog - 7 - 前端与后端的契约
后端写好了接口,前端要怎么"认识"它?这篇讲的是如何用 TypeScript 把后端的 API 翻译成前端能理解的类型

YukiLog - 5 - Service 层
从增删改查到真正的业务逻辑——这篇记录了我意识到"系统"需要更多东西的那个时刻

YukiLog - 3 - ORM 与 Entity 生成
数据库建好了,但代码还不认识它。本篇介绍 ORM 的作用,以及如何让 Rust 自动理解数据库的表结构

YukiLog - 1 - 新生
从用现成框架到决定自己写一个——这篇记录了 YukiLog 的起点,以及我为它选择的技术栈

基于 valaxy 的博客搭建
我第一次做blog, 选择了这个开箱即用的框架, 这一篇博客将带你了解我的一部分折腾过程
