StealThis .dev

Onboarding — Sample-data / try with demo prompt

A first-run onboarding pattern that turns an empty workspace into something you can actually click. A Start with sample data prompt offers two choice cards — load a faux CRM pipeline of example deals, or start from scratch and stay empty. Picking the demo shows a brief shimmering skeleton before the populated table animates in, with a toast confirming the count and a Clear demo data button to revert. Toggle between a modal prompt and an inline banner, and between preview-thumbnail and text-only cards.

Abrir en Lab
html css vanilla-js
Targets: JS HTML

Código

Sample-data / “try with demo” prompt

An empty workspace is the hardest moment in onboarding — there is nothing to click and nothing to learn from. This pattern meets new users with a Start with sample data? prompt offering two clear choices: Load demo data, which fills a faux Tarn CRM deals table with eight fictional example rows, or Start from scratch, which dismisses the prompt and keeps the board empty. Choosing the demo first shows a short shimmering skeleton, then animates the populated rows in and fires a toast confirming the count.

Once demo data is loaded, a Clear demo data button appears in the toolbar; clearing reverts the board to its empty state and brings the prompt back so the flow can be re-tried. The deal count lives in an aria-live region so it is announced to screen readers, the modal traps focus and closes on Esc, and every control is keyboard-usable with visible focus rings.

A segmented control at the top switches the prompt between a centered modal and an inline banner pinned above the table, and flips the choice cards between a preview thumbnail treatment and a compact text-only layout — so the demo shows each variant live. The whole layout is responsive down to 360px, collapsing the table into stacked label/value cards on narrow screens.

Illustrative UI only — fictional companies, owners, and figures.