marksrepo — Markdown 静态阅读站
把任意 .md 文件放进本仓库根目录(可带子目录),推送到 GitHub 后,Cloudflare Pages 会自动把每个 markdown 渲染成一篇可读的 HTML 页面:顶部目录、编号章节导航、表格、代码块、深色模式跟随系统。源文件零改动。
本地内容工作流
# 改完 .md 后本地预览(可选,构建在 CF 云端完成)
npm install
npm run build # 输出到 dist/
# 用任意静态服务器打开 dist/index.html
不跑 npm run build 也不影响发布 —— Cloudflare 构建阶段会自动执行。
本站如何工作
build.mjs:扫描全部.md(跳过dist/、node_modules/、点开头文件),按文件名排序 → 用marked渲染成dist/*.html,复制style.css。package.json:声明marked依赖和build脚本。style.css:阅读样式;prefers-color-scheme自动深色。- 正文中指向其他
.md的相对链接,构建时改写为.html,站内可跳转。
结构约定(沿用当前仓库)
- 章节文件带
01-…09-数字前缀,按阅读顺序排列。 00-阅读指南.md是站点首页性质的引导文档(会出现在目录第一位)。- 合订版
郭家豪-Go后端校招面试准备手册.md由build-handbook.ps1生成,可重新构建后提交。 practice/是 Go 练习代码目录,不参与站点渲染(非.md)。
Cloudflare Pages 部署
在 Cloudflare 控制台操作(一次性):
- Workers & Pages → Create → Pages → Connect to Git,选择本仓库
isyuah/marksrepo。 - Build settings:
- Framework preset: None
- Build command:
npm run build - Build output directory:
dist - (Node 版本建议选 18 或更高;默认即可)
- Save and Deploy。每次推送到默认分支自动重新构建。
首次构建成功后会给 https://<project>.pages.dev 地址;也可在 Pages 项目 Custom domains 绑定自己的域名。
私有访问(Cloudflare Access)
.pages.dev 默认公开。仓库私有 ≠ 站点私有。若要只有自己能看:
- Zero Trust 面板 → Access → Applications → Add an application。
- Application domain 填
*.pages.dev(或你的自定义域名),Session duration 自定。 - Policy:允许你的邮箱(或整个邮箱域名)通过验证码邮件登录。
- 免费额度可覆盖个人使用;登录前访问会先跳到 Access 认证页。
页面本身无需任何改动;Access 在边缘层拦截。
添加新文档
直接放入 .md(可带子目录、中文文件名均可),推送即自动出现在目录和导航。若文件名不带数字前缀会排在编号章节后面。