Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Trial Timeline Success Block for React

A trial confirmation page: fourteen day cells on shared hairlines with today filled and the reminder day marked, the first charge named, a switch for the reminder email, and the three features the trial unlocks.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

Show a new user the whole trial at a glance with this confirmation page for React with Base UI. It's the page Gaugefern, an analytics tool, shows when a 14-day trial starts: the page's side rails and one band frame it, a success mark and a headline say the trial began, and one sentence gives the last day. A strip of fourteen cells on shared hairlines holds the days, built from one fixed "today": day 1 is filled, the reminder day carries a mail mark, and a last full-width cell names the first charge and its price. A Switch turns the reminder email on or off and the mark follows. Under it a row of three cells lists the features the trial unlocks, and the Shine Button opens the dashboard, the only colored control. It's built from Switch, Shine Button and Guides, with a CSS entrance only. For free trials, previews and any product that charges after a period.

FAQ

What stays in the page, and how do I wire it for real?

Nothing was started and no email will be sent: the page is a confirmation for a made-up account. The switch only changes the page: the mail mark on day 12 shows or hides, and a polite status message says what changed and that nothing is sent. To wire it, set AS_OF to the trial's start from your server, TRIAL_DAYS and PRICE from the plan, and save the switch's value as the customer's preference where remind is. Your own job then sends the email on the reminder date.

How are the dates worked out?

Every date is derived from AS_OF with UTC arithmetic: the fourteen cells are the start day plus 0 to 13 days, the last day is day 14, the first charge is the day after it and the reminder is three days before the charge (day 12). Changing TRIAL_DAYS or REMIND_BEFORE moves all of them, and nothing reads the clock, so the page is the same for every visitor.

Does the page move when the switch changes?

No. The mail mark is always laid out and only made invisible when the reminder is off, so the cell keeps its height; the status line is announced, not drawn. The switch is named for assistive technology ("Email me 3 days before the first charge") and is neutral in color, so the Shine Button stays the page's only accent.

Is the strip accessible?

It's an ordered list: each cell is a list item with its weekday and date as a real time, and a hidden sentence that says which day of the trial it is, and for day 1 and the reminder day what that means. The marks themselves are decoration. The first-charge cell is the last item of the same list.

How does it look on a phone?

The strip wraps into two rows of seven days, the three features stack, and the Shine Button is pinned to the bottom of the screen while the page scrolls under it, so it is on the first screen. From the small breakpoint up the fourteen days sit in one row and the button sits in the flow.

  • Pro

    Trial Banner Billing

    Upsell and retention

    A trial-ending banner for an app's shell: days left in the heading, a progress bar, what changes when the trial ends, an Add payment method action and a dismiss that remembers.

  • Pro

    Plan Upgrade Success

    Plans and limits

    An upgrade confirmation page: Free and Pro side by side in one card with the limits that changed and how much each grew, the start and renewal dates, and a quiet fall of confetti that stops with reduced motion.

  • Pro

    A welcome page after sign-up: what happened, then a five-task setup checklist in an accordion where one task is open at a time, each with its own control, a count and a progress bar, and one primary that opens the app.

  • Pro

    A page for a finished workspace setup: a full progress bar over five ticked steps with their dates, three launch rows for what to do next, and a quiet fall of confetti that stops with reduced motion.

  • Pro

    Payment Receipt Success

    Payments and refunds

    A full-height payment confirmation split in two: what happened and what comes next on one side, an itemised receipt table with the tax worked out in cents, a copyable receipt number and a text download on the other.

  • Pro

    Seat Allocator Success

    Plans and limits

    A full-height confirmation for seats bought in bulk: four teams with steppers that can never take more than were bought, a bar and an unassigned count that follow them, a Save allocation button with a local result, and the order beside it.