Bento Launch Grid
A bento grid coming-soon layout: a large panel with a wordmark, monospace eyebrow, heading, and a working email-notify form spans the top, with a photo tile and a dark tile showing an overlapping avatar stack and a static waitlist count filling the row below.
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/bento-launch-grid.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/coming-soon/comingsoon48.tsx instead.
Usage
The file also exports comingsoon48Demo, 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 { ComingSoon48, comingsoon48Demo } from "@/components/blocks/coming-soon/comingsoon48"; export default function Page() { return <ComingSoon48 {...comingsoon48Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| wordmark | string | "Acme" | Small wordmark above the eyebrow. |
| eyebrow | string | "(coming soon)" | Monospace parenthetical eyebrow. |
| heading | string | "Something new is on the way" | Main heading in the large panel. |
| description | string | "We're putting the finishing touches..." | Supporting copy under the heading. |
| image | MediaSlotImage | none | Photo for the image tile, falls back to a placeholder. |
| waitlistCount | string | none | Static waitlist size shown in the dark tile, e.g. "4,820+". |
| waitlistMembers | WaitlistMember[] | none | People shown as an overlapping avatar stack in the dark tile. |
| className | string | none | Extra classes for the outer section element. |
Types
export interface WaitlistMember { name: string; avatar?: { src: string; alt: string }; }
Behavior notes
- The email form is real client state: submitting sets `submitted` and swaps the form for a success message, nothing is sent over the network.
- The avatar stack and waitlistCount are static demo data, not derived from any real signup count.
- Each avatar falls back to initials (via AvatarFallback/initialsFromName) if no photo is supplied or the image fails to load.
More Coming Soon Blocks
View all →countdown-timer-launch
Countdown Timer Launch
A centered launch page with a live days/hours/minutes/seconds countdown to a target date.
development-progress-milestones
Development Progress Milestones
A centered launch page with an overall progress bar and a milestone tracker list with status badges.
social-connect-launch
Social Connect Launch
A centered coming-soon page with pill-style outline buttons linking out to Twitter, GitHub, LinkedIn, and email.
animated-icons-preview
Animated Icons Preview
A centered coming-soon page with a row of bobbing icon tiles and a pulsing build-status indicator.
sneak-peek-feature-grid
Sneak Peek Feature Grid
A centered coming-soon page with a grid of blurred feature cards teased behind a lock icon overlay.
waitlist-with-avatars
Waitlist with Avatars
A centered coming-soon page with a working waitlist signup form, stacked subscriber avatars, and a live join count.