Skip to content

Professional redesign of the landing + status pages, gated by forge's own UI system#36

Merged
CodeWithJuber merged 1 commit into
masterfrom
claude/whitepaper-implementation-plan-x8f7bh
Jul 7, 2026
Merged

Professional redesign of the landing + status pages, gated by forge's own UI system#36
CodeWithJuber merged 1 commit into
masterfrom
claude/whitepaper-implementation-plan-x8f7bh

Conversation

@CodeWithJuber

Copy link
Copy Markdown
Owner

The public pages looked like accumulated AI-template output — the forge design gate agreed: the old landing failed with 19 distinct colors and 9 radius levels, the old status page with 15 colors and 5 radius levels. Both are rebuilt on one disciplined design system and now pass forge's own gates, statically and in a real rendered browser.

What changed

landing/index.html — full rewrite.

  • One token system: the forge dash eight-color warm-ink/ember palette (cross-product design identity), strict 4px spacing base, three radius levels, one shadow. Self-contained — no external fonts or requests.
  • Current, honest content: 438 tests, the PCM claim-with-evidence story (with a real forge ledger show panel), the six-stage loop, the nine supported tools, "team memory in three commands," and the honest-limits register — replacing the stale Cortex-only copy ("108 tests").
  • Full SEO: canonical/OG/Twitter meta, JSON-LD SoftwareApplication schema, semantic landmarks, keyboard-visible focus.
  • Scroll-reveal is JS-gated progressive enhancement (html.js stamped before first paint): no-JS UAs, crawlers, and reduced-motion users always see the full page — the old approach hid whole sections from anything that doesn't scroll.

scripts/build-pages.mjs — status-page generator restyled with the identical tokens (repositioned as "Live status, straight from the repository," linked from the landing nav). Changelog bullets now strip inline markdown; the routing metric splits its number from its label so it doesn't wrap in display-size mono. The test/pages.test.js contract (landmarks, version, Data Sources) is unchanged and green.

.github/workflows/static.yml — previously uploaded the entire repository as the Pages artifact, and the site root 404'd (no root index.html). Now it builds an assembled _site/: landing at the site root, generated status page at /status/ (built with BUILD_PAGES_LIVE=1 so GitHub counters refresh at deploy time), and deploys only that.

Gate evidence (the forge loop, end to end)

page check before after
landing forge uicheck design ✗ FAIL (19 colors, 9 radii, 79% on-scale) ✓ PASS — slop 0.42, 8 colors, 3 radii, 100% on 4px
status forge uicheck design ✗ FAIL (15 colors, 5 radii) ✓ PASS — slop 0.50, 8 colors, 3 radii, 100% on 4px
landing forge uicheck visual (rendered) ✓ PASS at 1280×800 + 390×844
status forge uicheck visual (rendered) ✓ PASS at both viewports

The rendered gate earned its keep: it caught UA-default 1em margins on small-font paragraphs computing to off-scale 13/14px values that static analysis cannot see — fixed by pinning explicit margins. A project fingerprint claim was minted (forge uicheck fingerprint --mint), so both pages are also checked for conformance to the project's design system (0.08 / 0.35, both ≤ 0.5), not just distance from generic templates.

Verification

  • npm test: 438 pass, 0 fail (pages renderer contract unchanged); npm run typecheck: 0 errors; biome clean on touched files.
  • Full-page screenshots reviewed at desktop and mobile widths for both pages.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Fc2MvWJbQ1cyNQ76ymv4hs


Generated by Claude Code

… uicheck

One design system across both public pages (the forge dash 8-color
warm-ink/ember palette, 4px spacing base, 3 radius levels, 1 shadow);
both pass the static design gate and the rendered visual gate, with a
minted project fingerprint for conformance. Scroll-reveal is JS-gated
progressive enhancement. static.yml now deploys an assembled _site/
(landing at root, status at /status/) instead of the whole repository.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Fc2MvWJbQ1cyNQ76ymv4hs
@CodeWithJuber CodeWithJuber marked this pull request as ready for review July 7, 2026 21:20
@CodeWithJuber CodeWithJuber merged commit 0cc5a2b into master Jul 7, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants