Skip to content

feat(marketing): make hero section mobile responsive#937

Merged
Kitenite merged 6 commits intomainfrom
fix-website-mobile
Jan 25, 2026
Merged

feat(marketing): make hero section mobile responsive#937
Kitenite merged 6 commits intomainfrom
fix-website-mobile

Conversation

@Kitenite
Copy link
Copy Markdown
Collaborator

@Kitenite Kitenite commented Jan 25, 2026

Summary

  • Add horizontal scroll for AppMockup on mobile with min-width constraint
  • Remove right padding on mobile so content touches screen edge
  • Update SelectorPill to support tap events and smaller text on mobile
  • Adjust HeroSection spacing, padding, and text sizes for mobile
  • Add scrollbar-hide utility for clean horizontal scroll
  • Prevent layout shift during typewriter animation with invisible placeholder

Test plan

  • Test hero section on mobile devices (iPhone, Android)
  • Verify horizontal scroll works smoothly on the app mockup
  • Check typewriter animation doesn't cause layout shift
  • Verify selector pills are tappable on mobile

Summary by CodeRabbit

  • New Features

    • Video now loads on demand with a clickable thumbnail and autoplay when played.
    • Horizontal scrolling enabled for product demo and selector pills on mobile.
  • Enhancements

    • Refined hero layout, spacing, and responsive paddings; improved heading layering for accessibility.
    • Added GitHub icon to CTA and adjusted button spacings.
    • App mockup constrained to avoid undersized rendering on narrow viewports.

✏️ Tip: You can customize this high-level summary in your review settings.

- Add horizontal scroll for AppMockup on mobile with min-width constraint
- Remove right padding on mobile so content touches screen edge
- Update SelectorPill to support tap events and smaller text on mobile
- Adjust HeroSection spacing, padding, and text sizes for mobile
- Add scrollbar-hide utility for clean horizontal scroll
- Use 100svh for better mobile viewport handling
Use invisible placeholder to reserve exact space for heading text
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jan 25, 2026

Warning

Rate limit exceeded

@Kitenite has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 5 minutes and 10 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📝 Walkthrough

Walkthrough

This PR adjusts the marketing hero UI: switching to svh units, refining responsive padding/gaps, layering a typewriter heading for accessibility, adding horizontal scrolling on mobile, renaming SelectorPill interaction from onHover to onSelect, introducing scrollbar-hide, and lazy-loading a YouTube demo on play.

Changes

Cohort / File(s) Summary
HeroSection Core
apps/marketing/src/app/components/HeroSection/HeroSection.tsx
Changed container height to min-h-[calc(100svh-64px)]; adjusted responsive padding/gaps; layered TypewriterText over an invisible span for accessibility; modified heading/button spacing and added FaGithub to the GitHub button.
ProductDemo & SelectorPill
apps/marketing/src/app/components/HeroSection/components/ProductDemo/ProductDemo.tsx, apps/marketing/src/app/components/HeroSection/components/ProductDemo/components/SelectorPill/SelectorPill.tsx
ProductDemo: reworked padding/gaps, added horizontal scrolling wrappers (overflow-x-auto, scrollbar-hide) for app mockup and selector pills. SelectorPill: public prop renamed onHoveronSelect; onMouseEnter and onClick call onSelect; reduced font/padding and added shrink-0.
AppMockup Layout
apps/marketing/src/app/components/HeroSection/components/AppMockup/AppMockup.tsx
Added min-w-[600px] to outer motion container to prevent shrinking below 600px.
VideoSection
apps/marketing/src/app/components/VideoSection/VideoSection.tsx
Added local isPlaying state and VIDEO_ID; render thumbnail with play overlay when idle and lazy-load autoplaying YouTube iframe when played.
Global Styles
apps/marketing/src/app/globals.css
New @utility scrollbar-hide to hide scrollbars across browsers (IE, Firefox, WebKit).

Sequence Diagram(s)

(Skipped — changes are primarily UI/layout and small interaction updates; no multi-component control flow diagram generated.)

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 I twitched my whiskers at svh so new,

I hopped on pills that click (not just view),
I hid the scrollbars, snug and sly,
A play button woke the video sky,
Hooray—this hero sings, fresh and true! 🥕

🚥 Pre-merge checks | ✅ 1 | ❌ 2
❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Description check ❓ Inconclusive The PR description provides a summary of changes and test plan, but lacks required template sections like Related Issues and Type of Change. Complete the description template by filling in Related Issues, Type of Change (mark applicable checkboxes), Testing details, and Additional Notes sections for clarity.
✅ Passed checks (1 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main objective of the changeset: making the hero section mobile responsive with adjustments to layout, spacing, and components.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jan 25, 2026

🚀 Preview Deployment

🔗 Preview Links

Service Status Link
Neon Database (Neon) View Branch
Fly.io Electric (Fly.io) View App
Vercel API (Vercel) Open Preview
Vercel Web (Vercel) Open Preview
Vercel Marketing (Vercel) Open Preview
Vercel Admin (Vercel) Open Preview
Vercel Docs (Vercel) Open Preview

Preview updates automatically with new commits

Replace direct YouTube embed with a facade pattern that shows a custom
thumbnail and play button, only loading the iframe when clicked.
- Make play button frosted glass with backdrop blur
- Only show dark overlay on hover
- Use CSS triangle for sharp play icon
@Kitenite Kitenite merged commit 7b612ea into main Jan 25, 2026
5 checks passed
@Kitenite Kitenite deleted the fix-website-mobile branch January 25, 2026 01:19
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