把博客变成可玩的发布系统

为什么这次重写选择 Astro、MDX 与 React Islands,以及文章如何容纳真正的交互组件。

#Astro#MDX#React

传统博客把文章当成字符串。这里把文章当成可信的源代码:普通段落继续使用 Markdown,需要突破排版时再引入组件。

静态优先,交互按需

Astro 在构建阶段把正文变成 HTML。只有明确写上 client:* 的组件才会向浏览器发送 JavaScript,所以花哨能力和轻量页面可以同时存在。

文章内嵌 React Island

拖动频率,波形和输出会在浏览器中同步更新。

2 Hz

这只是最小证明。以后可以把同一个位置换成 Canvas、WebGL、图表、代码编辑器,或者一整个小应用。

github.comvx-zjr/elvhack

内容、组件、部署配置和工程记录都在同一个 Git 历史里。