Skip to content

feat(website): homepage rebuild — category hero, live demo, install dialog - #997

Merged
blove merged 1 commit into
mainfrom
blove/homepage-rebuild
Sep 4, 2026
Merged

feat(website): homepage rebuild — category hero, live demo, install dialog#997
blove merged 1 commit into
mainfrom
blove/homepage-rebuild

Conversation

@blove

@blove blove commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Homepage rebuild: category, live hero demo, install dialog

Rebuilds the top of threadplane.ai and reorders the bottom, per docs/superpowers/specs/2026-09-02-homepage-rebuild-design.md (16 tasks). This is the website half of the arc; the demo-side /hero route shipped in #976.

Rewritten — stacked category hero (H1 "The AI agent UI framework for Angular."), InstallDialog (fake / LangGraph / AG-UI variants, keyboard-operable radiogroup, copy of the visible command), HeroDemo (server-rendered poster as the LCP element, origin-checked postMessage bridge to demo.threadplane.ai/hero, poster fallback after 8s), LogoRibbon into three labelled compatibility rows so a provider logo is never read as a direct adapter, HomeFAQ (12 intent-driven questions), PilotBlock, FinalCTA.

NewRuntimeParity (adapter toggle over a pinned, adapter-neutral component pane), ThreeSteps, CodingAgentQuickstart, ScopeTable, a shared Modal primitive extracted from DemoModal, and a "Try without a backend" docs page verified from a clean ng new application against the published 0.0.64 packages.

Moved — DemoShowcase, and the Yes Wall now shows 8 of 16 questions with an in-place expand.

Unmounted, not deletedStackDiagramSection, HomeConceptGrid.

All homepage copy, install commands and code snippets are single-sourced in src/lib/positioning.ts behind drift guards that resolve package names and peer dependencies against libs/*/package.json, parse every snippet through the TypeScript compiler, and pin the license word and Angular range to their manifests.

Verification

Check Result
Unit tests 914 passing
Playwright e2e 39 passing (website, home-hero, demo-modal)
Lint / type-check 0 errors
Production build green
Lighthouse desktop performance 93 → 100, LCP 1.4s → 0.8s, CLS 0.046 → 0
Lighthouse mobile performance 78 → 87, LCP 5.0s → 4.1s, CLS 0

The LCP element is now the hero poster on both form factors; the demo iframe is never the LCP and never loads before hydration, on mobile, or under reduced motion without a click. A responsive pass caught and fixed a real bug: the proof strip's fourth card was clipped by the viewport edge at 1440px.

Deferred to their own specs

Comparison pages · README and npm description alignment · OG image art · public skill file · content program · Search Console and PostHog baseline reviews · the provideAgent ref-aliasing follow-up in libs/langgraph · the clean-scaffold bundle-budget friction, documented as a callout on the new docs page for now.

🤖 Generated with Claude Code

@vercel

vercel Bot commented Sep 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
threadplane Ready Ready Preview Sep 4, 2026 6:22pm UTC

Request Review

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

…ialog

Rebuilds the top of threadplane.ai and reorders the bottom, per
docs/superpowers/specs/2026-09-02-homepage-rebuild-design.md. The demo-side
/hero route this embeds shipped in #976.

Rewritten: stacked category hero, InstallDialog (fake/LangGraph/AG-UI),
HeroDemo (server-rendered poster as the LCP, origin-checked postMessage
bridge to demo.threadplane.ai/hero, poster fallback), LogoRibbon into three
labelled compatibility rows, HomeFAQ, PilotBlock, FinalCTA.

New: RuntimeParity, ThreeSteps, CodingAgentQuickstart, ScopeTable, a shared
Modal primitive, and a Try-without-a-backend docs page verified from a clean
ng new application.

All homepage copy, install commands and snippets are single-sourced in
src/lib/positioning.ts behind drift guards that resolve package names and
peers against libs/*/package.json, parse every snippet through the TypeScript
compiler, and pin the license word and Angular range to their manifests.

Adopts main's decisions where they superseded the spec: the Yes wall stays
deleted and the reliability band keeps its slot and styling (#996), Promises
stays unmounted, and the telemetry FAQ answer uses the privacy-policy
language the public-copy contract requires (#980).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@blove
blove force-pushed the blove/homepage-rebuild branch from 9df214b to 92fe383 Compare September 4, 2026 18:19
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

@blove
blove merged commit f952348 into main Sep 4, 2026
33 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.

1 participant