What it does
WorldClock renders a responsive grid of clock cards, one per timezone. Each card displays the current time with ticking seconds, a day/night indicator (sun/moon icon), the timezone abbreviation, and the UTC offset.
API
Accepts a zones array of IANA timezone strings, and optional props for 12/24 hour format, showSeconds, custom card renderers, and grid layout configuration.
Common use cases
- Remote team dashboards showing every member's local time
- Travel planning pages with destination time previews
- Global event schedules with real-time countdowns
Accessibility
Each clock card is a live region (aria-live='polite') so screen readers announce time updates. The time, offset, and day/night status are exposed as accessible text labels.
Next.js integration notes
Import the client component via a dynamic wrapper. The grid layout works perfectly with responsive Tailwind breakpoints and can be nested inside Server Component pages.
FAQ
How many clocks can I display at once?
There is no hard limit. The component uses a single shared timer for efficient re-renders across all clock cards. Performance is smooth even with 20+ zones.
Do clocks sync with the user's system time?
Yes. Each card computes its displayed time from the browser's local time offset against the target IANA zone, so clocks stay in sync with the system clock automatically.