VuePress 1 源码博客复盘:内容结构、插件能力与迁移边界
本文目录
这篇复盘审阅的是一份旧版个人博客源码快照,而不是已经生成的静态发布目录。检查范围固定在 2026-05-21 的 main 版本:读取了依赖清单、源码目录结构和部分配置中的插件标识,没有安装依赖、运行构建、检查浏览器效果或部署。未读取环境文件,也没有打开发布 shell 脚本;本文不包含仓库地址、私有配置值或源码复制。源码仓库目前为私有,因此不附一个读者无法访问的链接;本文是可独立阅读的结构复盘,不是源码镜像或官方项目文档。
源码与静态产物是两类证据
源码项目的 docs/package.json 声明 VuePress ^1.9.7 和 vuepress-theme-reco ^1.6.14,提供本地开发与静态构建脚本。此前整理的旧站发布快照则由首页元数据标记为 VuePress 1.7.1,且没有构建清单和 .vuepress 配置目录。两个快照的版本线索不同,不能未经提交关系核验就当作同一次构建,也不能用静态产物反推源码插件是否启用。
在源码树 docs/src 中可见 191 个文件,其中 136 篇 Markdown,另有 Vue 组件、样式和图片资源。内容按前端、后端、工具、关于、留言等目录组织;历史的 work 目录属于旧站内容结构。它是迁移时需要核对和重定向的旧路径,不代表当前博客要恢复独立“工作”分类,相关技术内容已按新的知识分类整理。
插件清单不等于运行验收
依赖清单包含音乐播放器、图片缩放、评论、赞助、返回顶部、动态标题、鼠标效果、主题挂件和版权提示等 VuePress 插件。配置文件也含有若干插件标识,但仅凭依赖或配置文本,不能证明插件最终进入构建、当前服务仍可用、第三方接口可访问或移动端交互正常。本次没有运行旧项目,因此把它们视为待核对的历史能力清单,而不是“全部正常”的结论。
依赖清单中的代表性包名包括 @vuepress-reco/vuepress-plugin-bgm-player、@vuepress/plugin-medium-zoom、vuepress-plugin-comment、vuepress-plugin-sponsor、vuepress-plugin-go-top、vuepress-plugin-meting、vuepress-plugin-cursor-effects、vuepress-plugin-dynamic-title 和 vuepress-plugin-copyright。这些名称是该源码快照里的依赖声明,不代表每个包都已被配置启用。
| 历史能力 | 迁移时应验收的体验 |
|---|---|
| 图片放大 | 键盘可关闭、触屏缩放可控、长图不突破视口,减少动态效果偏好生效 |
| 背景音乐 | 明确播放/暂停与音量,尊重浏览器自动播放限制,记住读者偏好并可一键静音 |
| 评论 | 登录、审核、反垃圾、删除与作者回复都有服务端权限边界 |
| 赞助与打赏 | 金额、收款方式、二维码和文案由后台管理,缺少配置时不展示坏链接 |
| 返回顶部与目录 | 锚点可访问、滚动位置正确,手机上不遮挡正文和底部操作 |
| 光标或角色装饰 | 默认低干扰,可关闭,遵守 prefers-reduced-motion,不覆盖阅读区域 |
旧插件依赖 VuePress 1、主题上下文和对应打包链,不能直接装进 Astro 或 React 页面。应先把读者需要的行为写成验收清单,再选择原生浏览器 API、独立组件或服务端功能实现;不需要的装饰功能也可以明确舍弃。像评论和打赏这样的能力,不能只迁移一个前端按钮,审核、权限、配置和失败状态同样属于功能本身。
工程边界与维护信号
源码入口将开发、构建与两种发布脚本分别列出,但脚本内容没有审阅或执行,因此这里不推断实际部署位置、权限、凭据处理或回滚行为。package.json 没有声明测试命令;这只能说明当前包脚本里没有统一测试入口,不能证明没有人工或外部 CI 测试。
.vuepress 目录还跟踪了一个约 7 MB 的 dist.zip。在没有逐项确认用途前,不应把它当作可重复构建产物或最新发布包;更清楚的做法是让源码分支保存源码和锁文件,把可重建的发布压缩包放入带版本号的 Release 或独立产物存储,并用校验和记录对应源码提交。
迁移这类旧博客时,建议按以下顺序收敛:
- 导出旧路由、文章日期、标签、资源相对路径和插件清单,给每个旧地址安排稳定的新 slug 或重定向。
- 分开记录“依赖声明”“配置引用”“构建产物包含”和“真实交互可用”四种证据,不能以安装包清单代替端到端验收。
- 把音乐、图片、评论、打赏等行为分别映射到可配置的阅读器组件和服务端权限,不要把 VuePress 插件当成可直接复用的运行时代码。
- 用桌面与真实手机检查导航、目录、横向溢出、键盘焦点和低动态效果;逐个确认第三方服务不可用时的降级状态。
- 审阅构建和发布脚本后,再补测试、预览环境、产物签名与回滚步骤;没有审阅的脚本不要因为名称看起来熟悉就直接运行。
这份源码复盘与旧版静态博客快照的迁移分析互为补充:前者说明源码仓库中能确认的依赖与目录,后者只说明静态产物本身能证明的内容。两者都不代表旧插件已在当前博客恢复。
参考:VuePress 1 文档、VuePress 插件市场。本文是基于旧源码结构重新撰写的工程复盘,没有复制原站文章或插件正文。
Live Notes
留言提交后会先进入审核,审核通过后对其他读者公开。