shadcn.io is not affiliated with official shadcn/ui
Scheduled Publishing Comments Block for Ark UI
A composer with Post now or Schedule, a day and time picker for the next seven days, and a queue of scheduled posts you can edit, cancel with undo or publish now.
Installation
Overview
Write an announcement now and let it go out later, with this scheduler for React with Ark UI. A compact header names the thread. The frame holds the published posts in a held scroll region, then a composer whose Segment Group chooses Post now or Schedule. Schedule fills a day Native Select (the next seven days from a typed date, no clock) and a time select (09:00, 12:00 or 16:00 UTC) in a row that is always in place. The Shine Button reads Post now or Schedule post. Under it a queue sorted by time lists each scheduled post with Edit (the words become a Textarea), Cancel (the row stays as "Cancelled. Undo") and Publish now, which moves the post into the thread. It is built from Segment Group, Native Select, Textarea, Empty, Field and Guides. For release notes, status updates and any channel where timing matters.
FAQ
How do I set the days and times?
AS_OF, AHEAD and TIMES define what can be picked; the labels and ISO times are worked out with UTC arithmetic, never from the visitor's clock. Replace them with your own rules, for example business days only, and keep the zone in the label.
What stays local, and how do I make it real?
The queue and the thread live in the page, and nothing publishes by itself: a real scheduler needs a server job that posts at the chosen time. Send the ISO time with the text from post, store it, and have a worker publish and remove it from the queue.
How do Cancel and Undo work?
Cancel turns the row into "Cancelled. Undo" in place, moves focus to Undo and takes it out of the count. Undo restores it and returns focus to Cancel. Nothing is deleted until your app does it.
Is it accessible?
The mode is a labelled segmented control, the day and time are labelled selects, the queue is an ordered list in a labelled region, and every row action says what it acts on. One polite status line reports each change, for example "Scheduled for Fri 16 Oct, 09:00. Kept in this page only."