shadcn.io is not affiliated with official shadcn/ui
Fitness Coach Chat Block for Solid
A narrow coaching thread with a workout card of four moves and three tickable sets each, a 45-second rest countdown with Pause and Skip, and a Log workout button.
Installation
Overview
Show a workout you tick off inside a chat with this fitness coach chat for Solid with Ark UI. A narrow framed window of fixed height holds the thread between you and Kofi Brennan, a strength coach at Stridecombe, with a hairline Progress under the top bar for the week's sessions, "1 of 4". He posts a workout card of four moves with three sets each, a Checkbox per set with its reps and load typed. Ticking a set starts a 45-second rest that counts down once a second with Pause and Skip, and "Log workout" posts a summary of your ticked sets as your message and moves the week to "2 of 4 sessions". The composer's Shine Button is the only colored control. The frame is ruled by Guides, and everything moves with CSS only. It fits a personal-training app, a gym's member chat or any plan a coach hands out to tick off.
FAQ
What stays in the page, and how do I make it real?
Everything. The moves, reps and loads are typed in MOVES, the ticks and the week count live in the page's state, and the replies come from a short typed script. Nothing is sent and no model runs, as the line under the composer says. The figures are an example plan, not advice. To make it real, send the ticked sets and the log to your training backend in tick and logWorkout.
How does the rest timer behave?
It never runs on its own: it starts when you tick a set, counts from 0:45 down once a second, stops by itself at 0:00 and says so in the line under the composer. Pause and Resume hold it, Skip ends it. When the thread opens it is held at 0:45 with a Resume button, and with reduced motion it shows the same numbers, since a countdown is text.
What does Log workout do?
It posts "Workout logged: N of 12 sets." with N counted from your ticks, disables the button, shows "Logged" and moves the week's progress to the next session. Edit WEEK for another starting point.
Is it usable with a keyboard and a screen reader?
The log is a focusable region announced as a log, so new messages are read out once, and every message starts with a hidden name and time such as "You, 09:42". Delivery is a glyph and a word, never a color. Each set is a checkbox named with its set number and its reps and load, the rest is a time element and Pause is a plain button, and the line under the composer, not the ticking clock, announces changes.