shadcn.io is not affiliated with official shadcn/ui
Event Details Calendar Block for Ark UI
One event page with its time restated for Lisbon, New York or Tokyo, a collapsible description, a real .ics download, a copyable link, a guest list with a reply summary and a reply control.
Installation
Overview
Give an event its own page with this event details calendar for React with Ark UI. A hairline frame with a plus mark on each corner splits in two: at the start the facts as a description list (when, where, host), an "In 10 days" Badge, a NativeSelect named "Show time in" that restates the start and end for Lisbon, New York or Tokyo with a line saying whether the day shifts, and a Collapsible description. Two outline Buttons do real work: "Add to calendar" saves a one-event .ics file with UTC times, and "Copy link" puts the address on the clipboard. At the end the guest list gives each person initials, a glyph and a word for their reply, under a summary worked out from the list ("5 going, 2 maybe, 1 declined, 1 waiting"). A SegmentGroup in the foot changes your own row and the summary at once. The bands are ruled by Guides. It's built from NativeSelect, Collapsible, SegmentGroup, Avatar, Badge, Button and Guides, with a CSS entrance only. For event pages, ticketing apps and any product that shows who is coming.
FAQ
How do I use my own event?
Edit the constants at the top: START_UTC and END_UTC are ISO moments in UTC, EVENT_TITLE, EVENT_PLACE and EVENT_LINK are text, ABOUT is the description, and GUESTS holds each guest's name, initials and reply (going, maybe, declined or waiting). The summary and the guest count are worked out from that list.
Why is today always 14 October?
Nothing in the block reads the clock. AS_OF is the one moment it treats as now, and every day count, derived date and ring comes from it, so the block looks the same on any day and in a screenshot. To follow the real date, set AS_OF from your own clock or server and keep the rest as it is.
How are the other time zones worked out?
Each zone in ZONES has a typed offset in minutes from UTC for this date, so the block adds it to the UTC start and end and reads the day and time from the result. There are no daylight saving rules: if the date you use falls near a clock change, check the offsets. The line under the select says whether the day is the same, later or earlier than in Lisbon.
What does Add to calendar save?
A real calendar file made in the browser: one VEVENT with a typed UID and stamp, the start and end in UTC, the title and the place, with CRLF line endings. Nothing is uploaded. The status line says the file was saved.