Kysely 源码解剖:类型安全 SQL 如何走到 AST
从 Database 类型、查询泛型和 JOIN 可空性出发,沿着不可变 OperationNode、插件、编译器与驱动执行链,解释 Kysely 提供了什么类型安全,又刻意留下了哪些边界。
5939 字
|
30 分钟
深入理解 GraphQL:一条查询到底是怎么执行的
从 Schema、Query 与 Resolver 的核心关系出发,完整拆解 GraphQL 查询的 Parse、Validate、Execute 与响应生成过程,并说明 Non-Null 冒泡、DataLoader、Subscription、性能优化和生产安全实践。
5113 字
|
26 分钟
EmDash:如果今天重写一遍 WordPress
从设计动机一路下探到源码,拆解 EmDash 这个建立在 Astro 与 Cloudflare 上的全栈 TypeScript CMS:它把 CMS 编进 Astro,把插件放进 Worker 沙箱,用结构化 Portable Text 和数据库 schema 取代序列化 HTML。
5856 字
|
29 分钟
网页 UI 终于能进游戏和 3D 场景了:HTML-in-Canvas 为什么重要
从用户体验和 Web 渲染架构角度解释 HTML-in-Canvas:真实 DOM 如何保留输入、焦点、无障碍能力,同时作为 Canvas、WebGL、WebGPU 的纹理进入 GPU 合成管线。
4971 字
|
25 分钟
为了重玩金庸群侠传,我研究了一下 Ruffle 怎么复活 Flash
从重玩金庸群侠传 Flash 版开始,先讲普通用户怎么打开老 SWF,再结合源码拆解 Ruffle 如何用 Rust、WebAssembly、SWF 解析器、AVM1/AVM2 虚拟机和渲染后端重新实现 Flash Player。
4673 字
|
23 分钟
流式 HTML:从 htmx 片段装配到浏览器原生增量渲染
探讨流式 HTML 在 AI 搜索、智能问答和内容生成场景中的价值,介绍 htmx 的片段级渐进交付、标准 Streams API 的字节级增量渲染,以及相关工程边界和安全约束。
8509 字
|
43 分钟
把 Rust 二进制文件压到极致:基于 Rust 1.96 的实测瘦身指南
在 Rust 1.96 上逐条实测的二进制瘦身指南,涵盖 release/strip、profile 全家桶、nightly build-std、no_main/no_std 与 UPX,讲清每一步的原理、收益与代价。
2951 字
|
15 分钟
下一页预取方案选型:从轻量脚本到框架内置能力
对比 Quicklink、instant.page、ForesightJS、swup、Guess.js、Astro、Next.js、Nuxt、React Router 和 Speculation Rules API,梳理下一页预取的触发策略、适用场景与生产风险。
5500 字
|
28 分钟