Staaarter

Image Split Waitlist

A two-column coming-soon screen: the left side has a monospace eyebrow, an oversized headline, a working email waitlist form, and an avatar row for social proof. The right side is a tall full-bleed photo with a floating launch-date label overlaid near the bottom, hidden below the lg breakpoint.

By Staaarter Team
Coming Soon
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its avatar, avatar-initials, media-slot dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/image-split-waitlist.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/coming-soon/comingsoon16.tsx instead.

Usage

The file also exports comingsoon16Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.

import { ComingSoon16, comingsoon16Demo } from "@/components/blocks/coming-soon/comingsoon16";

export default function Page() {
  return <ComingSoon16 {...comingsoon16Demo} />;
}

Props

PropTypeDefaultDescription
eyebrowstring"(coming soon)"Monospace label above the heading.
headingstring"The future of your workflow starts here"Oversized main heading.
descriptionstring"Be first in line when we open the doors..."Supporting copy under the heading.
avatarsWaitlistAvatar[]noneStacked avatars rendered above the social-proof note.
socialProofNotestring"Join 800+ people already on the list"Text next to the avatar stack.
imageMediaSlotImageundefinedPhoto filling the right-hand panel.
launchLabelstring"Launching Spring 2026"Text in the floating label overlaid on the photo.
classNamestringnoneExtra classes for the outer section element.

Types

interface WaitlistAvatar {
  name: string;
  image?: { src: string; alt: string };
}

Behavior notes

  • The email field and submit are real client state (useState): submitting swaps the form for a confirmation message, nothing is sent to a server.
  • Avatars fall back to initials (via AvatarFallback/initialsFromName) when no `image` is supplied per entry, same pattern as the chat blocks.
  • The floating launch-date label and the photo itself are both static decoration, the photo panel is hidden below the lg breakpoint (hidden lg:block).