feat(marketing): redesign the T3 Code website - #5457
Conversation
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| desktopSections.forEach((section) => section.toggleAttribute("hidden", isDev)); | ||
| mobileSection?.toggleAttribute("hidden", isDev); |
There was a problem hiding this comment.
🟠 High pages/download.astro:239
Selecting the Dev desktop channel hides the Mobile section, so the iOS App Store and Google Play download links disappear until the user switches back to Latest or Nightly. The mobile store links are independent of desktop release assets, so they should remain visible in all channels. Consider removing the mobileSection toggle from applyStage.
desktopSections.forEach((section) => section.toggleAttribute("hidden", isDev));
- mobileSection?.toggleAttribute("hidden", isDev);🤖 Copy this AI Prompt to have your agent fix this:
In file @apps/marketing/src/pages/download.astro around lines 239-240:
Selecting the Dev desktop channel hides the Mobile section, so the iOS App Store and Google Play download links disappear until the user switches back to Latest or Nightly. The mobile store links are independent of desktop release assets, so they should remain visible in all channels. Consider removing the `mobileSection` toggle from `applyStage`.
ApprovabilityVerdict: Needs human review 2 blocking correctness issues found. Diff is too large for automated approval analysis. A human reviewer should evaluate this PR. You can customize Macroscope's approvability policy. Learn more. |
| } | ||
|
|
||
| /* ── Final CTA ────────────────────────────────────────── */ | ||
| .sec-cta { |
There was a problem hiding this comment.
🟡 Medium pages/index.astro:2680
.sec-cta is set to display: none with no rule ever restoring it at any breakpoint, so the final CTA section—including its download button, channel picker, and "All downloads" link—is never visible on any viewport. The JavaScript still initializes and updates those controls, but they remain unreachable. Consider removing the display: none declaration or adding a rule that shows the section at the intended breakpoint.
🤖 Copy this AI Prompt to have your agent fix this:
In file @apps/marketing/src/pages/index.astro around line 2680:
`.sec-cta` is set to `display: none` with no rule ever restoring it at any breakpoint, so the final CTA section—including its download button, channel picker, and "All downloads" link—is never visible on any viewport. The JavaScript still initializes and updates those controls, but they remain unreachable. Consider removing the `display: none` declaration or adding a rule that shows the section at the intended breakpoint.
The current marketing site does not clearly show how T3 Code works across desktop, web, and mobile, and its download flow does not distinguish release channels well.
This redesign gives the site a product-led story with a real interactive app demo, dedicated desktop and mobile download paths, and a cleaner Latest/Nightly/Dev flow. The embedded demo preserves visitor state, the download data handles long release histories, and the large footer wordmark stays visually neutral across channels.
Visual reference:
Verification:
vp test run apps/web/src/demo/fixtures.test.ts apps/web/src/demo/server.test.ts apps/marketing/src/lib/releases.test.ts(22 tests)vp run --filter @t3tools/web typecheckvp run --filter @t3tools/marketing typecheckGenerated with GPT-5.6 in T3 Code through the Codex harness.
Note
Medium Risk
Large marketing/CI surface area plus a workflow that pushes commits to the default branch; release URL rename can break stale imports at build time.
Overview
Redesigns the marketing site around Latest / Nightly / Dev release channels: shared layout adds stage switching (favicon, accent,
localStorage), OG/Twitter metadata, and a new nav/footer; download becomes a full-height channel hero with nightly release fetching, platform asset resolution, mobile store links, and a Dev “build from source” path.Marketing build pipeline now runs
build:sidebar-demoplus Playwright capture fordemo-statesand a WebGL-composited OG image;showcase-spec.jsondrives homepage feature crops. Legal pages gain an optional simplified layout without the section nav.CI adds
publish_marketing_preview: after iOS/Android dark showcase runs on the default branch, it copies screenshots intoapps/marketing/public/mobile-states, writessource.jsonprovenance, and auto-commits to default branch via a GitHub App when images change. README documents mobile app store links;GOOGLE_PLAY_STORE_URLreplaces the old Android constant name.Reviewed by Cursor Bugbot for commit d4ceccf. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Redesign the T3 Code marketing website with stage switching, interactive demo, and platform-aware downloads
localStorageand is synchronized across the layout, download cards, and the embedded demo iframe viaCustomEvent.fetchLatestRelease/fetchNightlyReleasehelpers in releases.ts; Dev mode copies agit clonecommand instead.apps/marketing/public/sidebar-demo; a Playwright script at capture-demo-screenshots.mjs generates demo state screenshots and OG images before each dev/build run.Mobile appsentry to the README linking to the iOS App Store and Google Play.ANDROID_PLAY_STORE_URLin site.ts is renamed toGOOGLE_PLAY_STORE_URL; any code referencing the old name will break at build time.Macroscope summarized d4ceccf.