Mobile App Hero with Phone Mockup

Fullscreen hero with app store buttons and phone mockup over inset background video

PRO

Hero103: Mobile App Hero with Phone Mockup

Fullscreen app-download hero: heading, description, and App Store/Google Play badge links on the left, a single notched phone-frame mockup showing a screenshot on the right, over an inset background video panel.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/hero103?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/hero103?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/hero103.tsx and its dependencies: the badge and button shadcn/ui primitives.

Quick start

The installed file exports hero103Demo alongside the block: the exact props behind the preview above. Spread it to get a working hero in one line.

tsx
import { Hero103, hero103Demo } from "@/components/beste/block/hero103";

export default function Page() {
  return <Hero103 {...hero103Demo} />;
}

Then replace the demo with your own props. Written out, the same setup looks like this:

tsx
import { Hero103 } from "@/components/beste/block/hero103";

export default function Page() {
  return (
    <Hero103
      badge={{ label: "Mobile App", variant: "secondary" }}
      heading="Everything you need, right in your pocket"
      description="Stay connected wherever you go."
      appStores={[
        { image: { src: "/badges/app-store.svg", alt: "Download on App Store" }, href: "/ios" },
        { image: { src: "/badges/google-play.svg", alt: "Get it on Google Play" }, href: "/android" },
      ]}
      backgroundMedia={{ type: "video", src: "/videos/hero.mp4" }}
      phoneScreenshot={{ src: "/images/app-screen.png", alt: "App screenshot" }}
    />
  );
}

Props

PropTypeDefaultDescription
badgeBadgePill shown above the heading
headingstringMain headline
descriptionstringSupporting copy under the heading
appStoresAppStore[][]Store badge images/links rendered under the description
backgroundMediaBackgroundMediaVideo or image behind the whole section
phoneScreenshot{ src: string; alt: string }Screenshot rendered inside the phone frame
invertColorbooleantrueLight-on-dark treatment (white text, black overlay) vs. dark-on-light
classNamestringExtra classes for the outer <section>
ts
type Badge = { label: string; variant?: "default" | "secondary" | "outline" };
type BackgroundMedia = { type: "image" | "video"; src: string; alt?: string };
type AppStore = { image: { src: string; alt: string }; href: string };

Behavior notes

More Hero blocks

View all Hero
PRO

hero105

Mobile Hero with Dual Phone Mockups

Fullscreen hero with two overlapping angled phone mockups and app store buttons over inset background video

PRO

hero108

Mobile Hero with Review Card

Fullscreen hero with phone mockup, star rating review card, and app store buttons over inset background video

PRO

hero53

Mobile App Hero with Phone Mockup

Split-layout hero with realistic iPhone mockup, notch detail, and App Store/Play Store download buttons. Perfect for mobile app landing pages.

PRO

hero106

Mobile Hero with Flanking Features

Fullscreen hero with centered phone mockup flanked by feature columns on each side over inset background video

PRO

hero107

Mobile Hero with 3D Perspective Phone

Fullscreen split hero with content left and 3D perspective-tilted phone mockup right over inset background video

PRO

hero100

Fullscreen Hero with Browser Mockup

Fullscreen hero with centered content and browser window frame mockup over inset background video