Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Availability Strip CTA Block for React

A slim support band with a world clock between the page rails: a headline at the start, a framed figure of three hub clocks that show local time and whether each hub is staffed, and a Shine Button to book a call.

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

A thin support band that proves someone is there, for React with Base UI. The column itself is the band, between the page rails: a short headline and one sentence with a bold lead at the start; in the middle a framed figure (hairlines with + marks on its corners) of three hub clocks on shared dividers, where New York, London and Singapore each show their local time, a status dot and the word Online or Offline, depending on whether the hub is inside its staffed hours; and a Shine Button "Book a call" at the end. Below lg the three parts stack. It's built from Data List, Status, Shine Button and Guides with your theme's tokens. For docs page footers, support and scheduling pages, and any place a full CTA would feel heavy.

FAQ

How do I change the hubs and their staffed hours?

Edit HUBS at the top of the file: each hub is a city and an IANA timeZone such as Europe/Berlin. OPENS and CLOSES are the staffed hours in each hub's local time, shared by all hubs. The strip's sentence reads them too, so it stays true when you change them. With the defaults of 8:00 to 20:00 in New York, London and Singapore, one hub is always inside its hours, which is what the headline says; if you pick hubs or hours that leave a gap, change the headline.

How does the clock know the time?

The browser reads it, through Intl.DateTimeFormat with a fixed locale and each hub's time zone, so daylight saving is handled for you and the format never depends on a visitor's settings. Until it has read the time the strip shows --:-- and a muted dot, which is also what a visitor with scripts off sees. It then refreshes every 30 seconds, and the timer is cleared when the block leaves the page.

How is the status shown to people who can't see the dot?

The dot is decoration. Each hub also says Online or Offline in text under its time, so the status never rests on colour alone: the dot is green when staffed and muted when not.

How does it fit on a phone?

Below the lg breakpoint the headline, the framed clocks and the button stack into a column. The clocks stay in three equal columns with a hairline between them, down to 320 px wide, with the city above the time and the status under it.

Does it work in a right-to-left layout?

Yes. The dividers, frame and spacing are logical, so they flip, and each time is wrapped so 14:05 never reads as 05:14. The hubs keep their order, since a clock is read as a list.

  • Pro

    Icon Banner CTA

    Slim bands

    A slim band split into cells between solid rails: an icon tile, a solid divider, a title with one line of detail, and a Shine Button link on the end.

  • Pro

    A slim documentation band between solid rails: a framed icon tile, a title that is one big link over the whole row, and a Shine Button to the quickstart.

  • Pro

    A slim release band between solid rails: a version badge, the headline change, a Shine Button to the notes and a disclosure that opens a second band of three change cells.

  • Pro

    A slim upsell band between the page rails: a headline and a sentence with the Shine Button to the Pro plans, and a closing band of three locked features on shared hairlines.

  • Pro

    A reverse split contact hero on solid rails: an abstract dot map with a pulsing marker per office fills the first half up to a divider, beside a headline, a Shine Button and three offices as ruled rows.

  • Pro

    Dual Action CTA

    Slim bands

    A band call to action between solid rails with one split button: a Shine Button Get started link joined to a chevron that opens a menu of other routes, beside a headline and a sentence, in your theme.