关注到 Rspress 是在看 Midscene.js (一个 AI + Playwright 的自动化工具)文档的时候,发现风格有点像 VitePress,但又有点不同,于是乎就上 Rspress 开源项目去了解情况(彼时 star 才 1k+,未来可期),这是字节跳动的一个前端开源组织 Web Infra 下的一个开源项目,此开源组织基于 Rust 构建了前端一系列工具,因此 Rspress 主要特点就是速度快。
经过大概一周断断续续的文档学习,我发现 Rspress 相比于 VitePress,有许多优点:
自动生成导航及 sidebar
Rspress 原生自带功能,调整排序顺序很方便, VitePress 需要三方库支持,但三方库支持得并不好,调整排序顺序很复杂。
这个对于我来说就是刚需,有谁能理解修改文档名称,或者修改了大目录名称,还要去改路由配置有多麻烦。这是我迁移到 Rspress 最直接的原因,让你能专注于码字,而不需要花大量时间维护路由配置。
内置很多好用的组件
比如图片点击放大、一键返回顶部、预览页、socialLinks 支持很多国内的平台,而这些在 VitePress 里面都需要三方库支持,但三方库的实现质量堪忧。
VitePress 有的基本功能 Rspress 都有
由于底层都是基于 markdown,因此在 markdown 语法上的显示效果几乎一样的,比如代码块、容器、高亮都一样,因此从 markdown 文档编写的角度讲,几乎没有迁移成本。
当然,也有 Rspress 也有缺点,主要由于是 2024 年才开源的新项目,又是基于 React 的框架,生态插件少,如评论插件、作者信息插件还没有,也有可能有插件,主要我还没有太多时间去折腾这块,还有手机端浏览器似乎适配不太好,不过这些功能相信后面会有的,而且现阶段对于我来说,这些功能也无所谓。
在技术这块我从来都是“喜新厌旧”的,也有可能是已经用 VitePress 构建了好几个网站,有点审美疲劳了。
说干就干,3 月 7 日,我“侍寝”到晚上 12 点,起床拿起电脑直接干到凌晨 3 点,从 Github 仓库创建、框架迁移、各种配置、Github Action 配置、云服务器配置,一段操作初版完成上线;3 月 8 日,一样的时间干到凌晨 3 点,文档细节调整、网站 logo 重做,主题色直接用的默认,终于达到自己比较满意的状态。
迁移到 Rspress 后,目前情绪稳定,感觉良好。dev 速度和 build 速度好像是要快一点。