Coming Soon Client Marquee

(Clients)

The wall goes up soon

The work is signed and already running. Each name goes up here the week its client clears the announcement.

Coming soonComing soonComing soonComing soonComing soonComing soonComing soonComing soonComing soonComing soonComing soonComing soon

Nine engagements are under wraps right now. The first names are made public this quarter.

About this block

Coming Soon Client MarqueePRO

A client wall with the clients withheld. Instead of logos, an oversized ghost-type marquee repeats a coming soon label behind edge fades, under a centered eyebrow, heading and note, with scroll direction and speed as props.

ComingSoon76: Coming Soon Client Marquee

A references section for the stage where the deals are done but the names are not public yet. The layout keeps the shape of a client wall, eyebrow, heading, description, then an endless strip, except the strip carries no logos at all: an oversized ghost-type label scrolls in its place, so the page holds its social-proof rhythm without claiming anything it cannot.

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.

Upgrade Now

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/comingsoon76?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

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

This installs the block to components/beste/block/comingsoon76.tsx, the badge7 component it uses for its eyebrow, and its dependencies.

Quick start

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

tsx
import {
  ComingSoon76,
  comingsoon76Demo,
} from "@/components/beste/block/comingsoon76";

export default function Page() {
  return <ComingSoon76 {...comingsoon76Demo} />;
}

Then replace the demo with your own props. marqueeText is the only string that repeats, so it is the one to change on a Turkish page.

tsx
import { ComingSoon76 } from "@/components/beste/block/comingsoon76";

export default function References() {
  return (
    <ComingSoon76
      badge={{ label: "Referanslar" }}
      heading="Yakında burada"
      description="Anlaşmalar tamam, isimler henüz açıklanmadı."
      marqueeText="Yakında"
      note="Dokuz iş ortağı, ilk isimler bu çeyrekte."
      direction="left"
      speed="normal"
    />
  );
}

Props

PropTypeDefaultDescription
badgeBadgeEyebrow above the heading, rendered via Badge7
headingstringSection heading
descriptionstringSupporting line under the heading
marqueeTextstringThe repeating label, for example "Yakında" or "Coming soon"
notestringSmall centered line under the strip; omit to hide it
direction"left" | "right""left"Scroll direction
speed"slow" | "normal" | "fast""normal"52s, 34s or 20s per loop
classNamestringExtra classes for the outer <section>
ts
type Badge = { label: string };

Behavior notes

  • The label is repeated six times per half, the track renders both halves and animates to -50%, so the loop closes seamlessly at any viewport width. Hovering anywhere over the strip pauses the animation via [animation-play-state:paused].
  • The type is sized in 14vw up to the md breakpoint and then locks to 9rem, so it scales with a phone but stops growing on a wide desktop.
  • leading-tight rather than leading-none is deliberate. The strip clips its overflow to hide the loop seam, and a line box of exactly 1em is shorter than the font's ascent plus descent, which cropped the descenders on letters like g, q and p.
  • Direction and speed resolve to one of six pre-written Tailwind classes rather than an interpolated one, so nothing depends on a class name assembled at render time. Both props fall back to left and normal when passed an unknown value.
  • Left and right edges are masked with from-background gradients, which assumes the section sits on the page background. On a tinted surface, swap those two gradient stops to match.
  • The keyframes live in a <style jsx> block scoped by the block name, so two marquee blocks on the same page cannot collide over an animation name.

More Coming Soon blocks

View all Coming Soon
PRO

comingsoon47

Marquee Launch Hero

A coming-soon hero with an oversized looping background marquee behind a centered monospace parenthetical eyebrow, a bold wordmark, a tagline, and a working email notify form with a success state.

PRO

comingsoon60

Portfolio Under Construction

A personal coming-soon page with a monospace parenthetical eyebrow, an oversized name, a role and tagline, an email contact pill button, a row of social links, and an availability status line.

PRO

comingsoon73

Sign The Wall Waitlist

An interactive waitlist coming-soon section with a monospace parenthetical eyebrow, a heading, a name and email form, and a live wall of member name chips that prepends your own entry on submit.

PRO

comingsoon22

Coming Soon Notify Page

A centered coming-soon launch page with a brand wordmark, a square eyebrow, an accent-highlighted heading, a working email notify form with a success state, a launch note, and a row of social links.

PRO

comingsoon63

Product Pre-Order Teaser

A product launch coming-soon section with a full-height product image beside a monospace parenthetical eyebrow, a product name, a tagline, a ship date, a working notify email form, and a spec grid.

PRO

comingsoon58

Store Drop Coming Soon

An e-commerce coming-soon section with a square eyebrow, a heading, a drop-date card, a grid of product teaser cards with blurred prices, and a working email notify form with a success state.