Skip to content

feat(site): split hero with editor above the fold + site-wide improvement pass#3

Merged
fcoury merged 6 commits into
mainfrom
hero/split
Jul 19, 2026
Merged

feat(site): split hero with editor above the fold + site-wide improvement pass#3
fcoury merged 6 commits into
mainfrom
hero/split

Conversation

@fcoury

@fcoury fcoury commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

What this does

Puts a real editor capture above the fold and ships a full improvement pass underneath it.

Hero (variant B of three explored)

  • Two-column hero: headline, lead, and install command on the left; a framed ghostty-code.jpg capture on the right, bleeding past the shell and dissolving via a gradient mask that completes exactly where the nav rule ends (200px fade run; 140/90px at smaller breakpoints)
  • No layout shift when switching install tabs — the copy column can shrink (min-width: 0) and long commands ellipsize in place
  • Tabbed preview section below defaults to the Commands capture so it doesn't repeat the hero image
  • Verified: zero horizontal overflow at 390px, fade pinned to the boundary at 1440px and 1920px

Improvement base

  • SEO: canonical + metadataBase (getred.dev), theme-color, JSON-LD SoftwareApplication, robots.txt, sitemap.xml, branded 404 with real 404 status
  • Performance: og.png 1.3MB → 307KB (1200×630 palette PNG); page is now a server component with two client islands (InstallPicker, PreviewTabs) instead of one fully-hydrated page; single image preload hint
  • UX/a11y: install tab auto-selects the visitor's OS after hydration (SSR default unchanged), aria-live copy announcement, nav links stay visible on mobile
  • Cleanup: removed unused starter scaffolding (drizzle/db layer, examples/, chatgpt-auth, template SVGs), package renamed to red-website, README rewritten, pre-existing worker type error fixed

Tests

5/5 passing (installer drift check, SSR assertions, SEO metadata, 404, assets) + lint clean. New assertions cover canonical/theme-color/JSON-LD, robots/sitemap, the 404 page, and an og.png size ceiling.

🤖 Generated with Claude Code

fcoury and others added 6 commits July 19, 2026 16:58
- Remove unused vinext-starter scaffolding (drizzle/db, examples, chatgpt-auth,
  template SVGs) and rewrite README for the RED site
- Add canonical + metadataBase, theme-color, JSON-LD SoftwareApplication,
  robots.txt, sitemap.xml, and a branded 404 page (real 404 status)
- Compress og.png 1.3MB -> 307KB (1200x630 palette PNG)
- Split the page into a server component with InstallPicker/PreviewTabs client
  islands; add aria-live copy feedback and OS auto-detection for the install tab
- Keep nav links visible on mobile instead of hiding them

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Rebuild the hero as a two-column grid: left-aligned copy with the
InstallPicker island, right column a framed ghostty-code capture that
bleeds off the right viewport edge (negative margin mirroring the
.shell math, guarded by overflow-x: clip on the hero). Drops the ASCII
wordmark, moves the priority preload from PreviewTabs to the hero
image, and stacks to a centered column with a shorter cropped shot
under 900px.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The bleeding panel now dissolves via a gradient mask aligned to the point
where the nav rule ends, instead of cutting hard at the viewport edge.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The dissolve now ends fully transparent where the nav rule ends, with a
200px fade run leading into it (140px/90px at smaller breakpoints), so no
panel content spills past the page boundary at any viewport width.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Grid items default to min-width auto, so the long curl command widened the
copy column and pushed the screenshot panel. Let the column shrink and pin
the install button to the column width so commands ellipsize in place.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The split hero already leads with the Edit capture, so the tabbed preview
below now defaults to Commands instead of repeating the same screenshot.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@fcoury
fcoury merged commit 9cd630b into main Jul 19, 2026
1 check passed
@fcoury
fcoury deleted the hero/split branch July 19, 2026 20:40
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