StealThis .dev
Pages Hard

Coach — Booking 1on1

An energetic dark 1-on-1 coaching booking flow where athletes choose a session type, scan a live availability calendar with time-zone aware slots, fill in their training details, and lock in a glowing lime confirmation — every step gated, keyboard friendly, and packed with motivational micro-interactions.

Open in Lab
html css vanilla-js
Targets: JS HTML

Code

A full 1-on-1 booking experience for a fitness coach, built around a four-step flow: pick a session type (Strength Reset, HIIT Sprint, Mobility Rebuild, or Full Assessment), choose an open slot from a week-view availability calendar, enter your details, then land on a punchy confirmation screen. A sticky progress rail up top tracks where you are, and the primary electric-lime CTA glows and only unlocks once the current step is satisfied.

The calendar renders a real seven-day strip with per-day slot chips; unavailable and already-booked chips are visibly muted and unfocusable, while open chips respond to hover, click, and keyboard selection. A timezone note keeps everyone honest, and a live summary card mirrors your session, date, time, and price as you go so the choice never feels blind.

Interactions are all vanilla JS: step gating, calendar navigation between weeks, slot selection, inline form validation with accessible error text, a toast helper for feedback, and a generated booking reference on confirmation. The layout collapses gracefully to a single column under 520px, keeps WCAG AA contrast on the dark surface, and shows a clear focus ring on every control.