项目背景
面试备考时,市面上的八股文资料要么太碎,要么太浅。我决定自己整理一套覆盖 C++、AI、Python 的系统性笔记,并将其部署为可检索的知识库网站。
技术亮点
- 124+ 篇文章,全部 Markdown 格式,零 frontmatter 依赖
- 自定义 remark 插件从文章内容自动提取标题和元数据
- 构建时生成完整搜索索引(Fuse.js),支持全文模糊搜索
- Astro View Transitions 实现丝滑页面切换
- Shiki 双主题(light/dark)代码高亮
挑战与解决
中文文件名 URL 问题:含特殊字符(#、空格、__)的中文文件名在某些环境会产生 URL 编码问题。解决方案是统一 percent-encoding,在 Astro 路由层做 normalizeSegment 匹配。
内容同步:笔记在父目录,网站在子目录。通过预构建脚本 sync-content.sh 在每次 dev/build 前自动同步,避免了符号链接在 WSL2 下的不稳定问题。