Referral Rewards Tiers
A centered pre-launch referral card: a progress bar shows how many friends the visitor has referred, a list of reward tiers shows which rewards are already unlocked and which are still locked, and a dark Share button copies the visitor's referral link to the clipboard.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/referral-rewards-tiers.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/coming-soon/comingsoon71.tsx instead.
Usage
The file also exports comingsoon71Demo, 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 { ComingSoon71, comingsoon71Demo } from "@/components/blocks/coming-soon/comingsoon71"; export default function Page() { return <ComingSoon71 {...comingsoon71Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| eyebrow | string | "Coming soon" | Small label above the heading. |
| heading | string | "Invite friends, unlock rewards" | Section heading. |
| description | string | "Share your referral link, every friend who joins..." | Section subheading. |
| referralCount | number | 3 | Number of referrals to show next to the progress bar. |
| progressPercent | number | 60 | Progress bar fill percentage, clamped to 0-100. |
| progressLabel | string | "3 of 5 referrals to the next reward" | Label above the progress bar. |
| tiers | RewardTier[] | none | Reward tiers to render, each flagged locked or unlocked. |
| referralUrl | string | "https://example.com/invite/a1b2c3" | Referral link copied to the clipboard by the Share button. |
| className | string | none | Extra classes for the outer section element. |
Types
export interface RewardTier { id: string; label: string; threshold: number; reward: string; unlocked: boolean; }
Behavior notes
- Real interactivity: the Share button calls navigator.clipboard.writeText(referralUrl) and swaps its label/icon to "Copied" (useState), it does not revert back automatically.
- The progress bar percentage, referral count, and each tier's locked/unlocked flag are all static props, nothing computes or animates them.
- Locked tiers get a Lock icon and reduced opacity, unlocked tiers get a Check icon, purely conditional styling from the `unlocked` boolean.
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.