本站说明
这个站是怎么搭的。
做出来是为了好读,也为了能核验。没有构建魔法,不向外发一个请求, 整套源码都摆在外面,可以核对。
怎么构建的
一个用 Jekyll 生成、托管在 GitHub Pages 上的静态站点——
没有 JavaScript 框架,不做客户端渲染,除了 Jekyll 本身再没有别的
构建步骤。零件保持得少:github-pages gem,外加
jekyll-feed、jekyll-seo-tag 和
jekyll-sitemap;一份手写、基于设计 token 的样式表;
以及分散在六个小文件里、约 500 行的原生 JavaScript。这些
JavaScript 全是渐进增强——把它关掉,每个页面照样能用。
字体
标题字用 EB Garamond,中文回退到 Noto Serif SC 或系统 衬线体;正文用系统无衬线体;小号技术标签用 IBM Plex Mono。 拉丁字体都自托管在本站——不走字体 CDN,不向 Google Fonts 发请求。 中文字形由你自己的系统提供。
怎么核验
「这里不追踪你」不是一句承诺,而是被强制执行的。一条严格的
Content-Security-Policy 把 script-src 钉死在
本站(外加两段内联的主题与动效脚本,按哈希放行),并设了
connect-src 'self',于是页面无法向别处发起请求:没有
分析、没有 CDN、没有远程调用。每一处改动都由一个构建后校验器
(scripts/validate_site.rb)把关,CI 在每个 pull
request 和推送到 main 时都会跑它——它核对元数据、双语
hreflang 对应、安全策略和静态资源完整性。而且源码是
公开的:可读、可 clone、可开 issue。
隐私
没有分析,没有 cookie,没有第三方资源——没有追踪。也没有联系 表单、不收集邮箱;找我的方式是在 GitHub 上开个公开的 issue 或 discussion,让对话留在代码旁边。
- 生成器仅 Jekyll
- 托管GitHub Pages
- 字体EB Garamond 与 IBM Plex Mono
- JavaScript约 500 行,渐进增强
- 分析无
- 源码在 GitHub 上查看