diff --git a/docs/project-state.md b/docs/project-state.md index c84696d..2eb421e 100644 --- a/docs/project-state.md +++ b/docs/project-state.md @@ -82,6 +82,17 @@ Living list of what's done and what's next for blog.hoelee.com. Work through the - **Desktop banner height** capped (720px, centred): 67% → **45%** of a 900px viewport, art intact rather than cropped. - Measured post page: images **277 KB → 38 KB**, height **5,758 → 5,065px** desktop / 9,423 → 8,807px mobile. Script: `scripts/optimize-images.py`; format policy: `design-guide.md` §3; runbook step in `ops-runbook.md`. +- ✅ **B7 review-response batch, 2026-10-19** — an outside content/UX review of the live site was reconciled claim-by-claim against the repo; only the measured defects were acted on. + - **About counter was hand-typed and had drifted**: `about.astro` said **71** write-ups while the homepage rendered **72**. Both About pages now count from the collection (`getCollection('posts', isEn|isZh).length`), so the number cannot drift again. + - **Reading time was English-only maths**: `minutesOf` split the body on whitespace and divided by 200, so a Chinese post (no interior spaces) showed **1 min** against **5 min** for its English twin. New `src/lib/reading-time.ts` counts CJK ideographs at ~400/min plus Latin words at 200/min; pure-ASCII bodies are unchanged (same formula), the ZH post now reads **5 分钟**, and the ZH article header no longer says "min read". + - **ZH copy defects**: `主陆开发者` → `中国大陆开发者`; `基元律动值得麻烦的原因` → `为什么值得考虑基元律动` (the English twin already said *why it is worth the hassle*). + - **`hello-world` contradicted the site**: it still declared English primary with selective Chinese, and quoted a `~140-container homelab`. Both language twins now say every post exists in both languages and quote **162 containers across three self-managed hosts**. + - **`0 hosting companies between me and the servers` was loose** (the VPS is rented from a provider) → `0 managed hosting layers — I run all three hosts myself` (EN + ZH). + - **Hero sub-paragraph now leads with the capability**, not the container count; the number follows as evidence. `
That footprint is client websites, a mail platform, CI/CD, workflow automation,
diff --git a/src/pages/index.astro b/src/pages/index.astro
index de424be..1c0a537 100644
--- a/src/pages/index.astro
+++ b/src/pages/index.astro
@@ -47,9 +47,10 @@ const featuredMetrics: Record
- I run 162 containers across three self-managed hosts — client sites, a
- mail platform, CI/CD, workflow automation and this blog — and I build web systems for
- Malaysian SMEs. I write up what broke, what the evidence said, and how I fixed it.
+ I build and operate production web systems — from the code down to the servers.
+ 162 containers across three self-managed hosts run client sites, a mail
+ platform, CI/CD, workflow automation and this blog. I write up what broke, what the
+ evidence said, and how I fixed it.
Read the engineering case studies ↓
@@ -72,6 +73,8 @@ const featuredMetrics: Record
这套环境里有客户网站、邮件平台、CI/CD、流程自动化、统计和这个博客,全靠手工拴在一起。
diff --git a/src/pages/zh/index.astro b/src/pages/zh/index.astro
index 6af5219..7b0af18 100644
--- a/src/pages/zh/index.astro
+++ b/src/pages/zh/index.astro
@@ -51,9 +51,7 @@ const featuredMetrics: Record
- 我独自运维 三台自管服务器上的 162 个容器(客户站点、邮件平台、
- CI/CD、流程自动化与这个博客),并为马来西亚中小企业构建 Web 系统。这里写的是
- 「坏了什么、证据在哪、怎么修好」。
+ 从代码到服务器,生产环境的 Web 系统我自己从头做到尾。三台自管服务器上跑着 162 个容器:客户站点、邮件平台、CI/CD、流程自动化,还有这个博客。这里写的是「坏了什么、证据在哪、怎么修好」。
先看工程案例 ↓
@@ -76,6 +74,8 @@ const featuredMetrics: Record{SITE.author} — full-stack developer & DevOps engineer
{SITE.author} —— 全栈开发者兼 DevOps 工程师