StealThis .dev
Pages Hard

Airline — Booking Flow

A polished, four-step airline checkout that takes a fictional JFK to LHR fare from passenger details through extras, payment, and a final review to an animated confirmation. Validated name and card forms, a baggage stepper, seat and meal pickers, and an insurance toggle all feed a live fare-summary sidebar with a running total. Confirmation issues a perforated boarding pass with codes, gate, seat, and an on-time status pill. Built with vanilla JS and tabular aviation typography.

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

Code

Booking Flow

A complete airline checkout for a fictional Skyward Air flight (SW 418, JFK → LHR). The flow moves through four numbered steps — Passengers, Extras, Payment, and Review — using a clickable stepper that lets travellers jump back to completed steps. Each step is a distinct pane with smooth fade transitions, while a sticky fare-summary sidebar tracks the itinerary, the per-passenger breakdown, and a running total that flashes whenever it changes.

The extras step is the interactive heart of the demo: a baggage quantity stepper, radio-style seat and meal pickers (keyboard-navigable with arrow keys), and an animated insurance switch all recalculate the total instantly and push line items into the summary. Forms validate inline — required names, a real email pattern, and a formatted card number, expiry, and CVC — surfacing clear field-level errors and toast feedback rather than blocking silently.

Confirming issues a generated booking reference and renders a perforated boarding pass with airport codes, gate, seat, total paid, a barcode strip, and a pulsing “On time” status pill. Everything is self-contained vanilla HTML, CSS, and JavaScript with Inter, tabular figures for times and prices, and a layout that collapses gracefully to mobile.

Illustrative UI only — fictional airline, not a real booking or flight system.