docs(i18n): Simplified Chinese landing page and README - #295
Conversation
#294 adds `values-zh` to the app. The public surfaces did not follow, and they are the half a Chinese reader meets first — the landing page, the privacy policy, and the README are what you see before you install anything. Adds index.zh.html, privacy.zh.html and README.zh.md, and wires zh into the language switcher, hreflang set and og:locale alternates of the twelve pages that already existed. The "UI in 6 languages" line in all seven READMEs becomes 7, which is why this has to land after #294 and not before. Two gate changes, both because the gates caught something: - `.lang-switch` in style.css gains `flex-wrap: wrap`. A seventh chip overflows all six privacy pages by 9px at 320px, and the #187 overflow gate failed on it. landing.css already wrapped; style.css was the one that did not. - verify-landing-versions.ps1 learns index.zh.html / README.zh.md, and the demo-clip check gains a `Fallback` field. There is no zh tablet recording yet, so both zh surfaces point at the `-en` clip. Dropping them from the list would have left them unchecked — exactly the hole that check exists to close (#258) — so the borrow is declared and printed in yellow instead. THANKS.md gains a Contributed section. The existing table is about reports and its prose says so; a translation is a different kind of outside work and gets its own row rather than being filed under "Reported". Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c966b0116f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| <link rel="stylesheet" href="style.css"> | ||
| <link rel="preconnect" href="https://fonts.googleapis.com"> | ||
| <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> | ||
| <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700;800&display=swap" rel="stylesheet"> |
There was a problem hiding this comment.
Apply the imported Simplified Chinese font
This page imports Noto Sans SC, but docs/style.css only names Noto Sans KR and Noto Sans JP before the system fallbacks, so the downloaded family is never selected. Visitors to the Chinese privacy page therefore incur a render-blocking Google Fonts stylesheet connection while still seeing their system font; add Noto Sans SC to the applicable stack or remove this unused import.
Useful? React with 👍 / 👎.
| # ---- 랜딩 페이지 ---- | ||
| $docsPath = Resolve-UnderRoot $DocsDir | ||
| $landingFiles = @("index.html", "index.ko.html", "index.ja.html", "index.de.html", "index.es.html", "index.fr.html") | ||
| $landingFiles = @("index.html", "index.ko.html", "index.ja.html", "index.zh.html", "index.de.html", "index.es.html", "index.fr.html") |
There was a problem hiding this comment.
Update the seven-locale release contract
Adding index.zh.html here makes the verifier enforce seven landing pages, but the repository's agent instructions and docs/RELEASE.md still explicitly define the public surfaces as six locales and omit zh. Future release work is therefore given conflicting source-of-truth instructions and may update only six surfaces before this script fails; update those release instructions alongside this list so the documented workflow matches the new contract.
AGENTS.md reference: AGENTS.md:L263-L263
Useful? React with 👍 / 👎.
Follows #294, which adds
values-zhto the app. This does the public half: the landing page, the privacy policy and the README are what a Chinese reader meets before installing anything, and they were still English-only.Merge after #294. The "UI in 6 languages" line becomes 7 in all seven READMEs, which is only true once the app strings land.
New
docs/index.zh.html,docs/privacy.zh.html,README.zh.mdhreflangset andog:locale:alternatelist of the twelve pages that already existed, plus the language line in the six existing READMEshreflang="zh-Hans"and<html lang="zh-Hans">rather than plainzh, since the content is Simplified only.Two gate changes, both because a gate caught something
.lang-switchgainsflex-wrap: wrapinstyle.css. A seventh chip overflows all six privacy pages by 9px at 320px, and the #187 overflow gate failed on it.landing.cssalready wrapped —style.csswas the one that did not, so the index pages were fine and the privacy pages were not.verify-landing-versions.ps1learns the new files, and the demo-clip check gains aFallbackfield. There is no zh tablet recording yet, so both zh surfaces point at the-enclip. Dropping them from$assetPairswould have left them unchecked — which is the exact hole that check was added to close (#258) — so the borrow is declared in the data and printed in yellow instead of hidden.THANKS.md
Gains a
## Contributedsection. The existing table is about bug reports and its prose says so ("Listed by first report"); a translation is a different kind of outside work, so it gets its own row rather than being filed under "Reported".Verified
scripts/verify-landing-versions.ps1— 7 landing pages, 7 READMEs, 14 demo-clip surfaces, all passscripts/check-landing-overflow.mjs— 14 pages × 6 widths (320–1280px), no horizontal overflowNot in this PR
markleaf-tablet-zh.mp4/.gif) — the other six locales have onefastlane/metadata/android/has nozh-CNlisting, and the six existingfull_description.txtfiles still say "6 languages"README.zh.mdlinks to the zh ones🤖 Generated with Claude Code