Multi-Step Sign Up Wizard
Full-height multi-step registration flow with a numbered progress stepper (Account, Profile, Workspace) across the top. Real client state advances through three form bodies via Back and Continue buttons, with Continue reading "Finish" on the last step.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/multi-step-sign-up-wizard.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/auth/auth33.tsx instead.
Usage
The file also exports auth33Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.
import { Auth33, auth33Demo } from "@/components/blocks/auth/auth33"; export default function Page() { return <Auth33 {...auth33Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| heading | string | "Create your account" | Heading above the stepper. |
| steps | string[] | ["Account", "Profile", "Workspace"] | Labels for the stepper circles. The three step bodies are always Account/Profile/Workspace fields regardless of custom labels passed here. |
| finishLabel | string | "Finish" | Label the Continue button shows on the last step. |
| className | string | none | Extra classes for the outer section element. |
Behavior notes
- Real client state (`currentStep`) drives which of the three form bodies renders and which stepper circle is filled, active, or upcoming; the active circle gets `aria-current="step"`.
- Back is disabled on the first step; Continue advances currentStep on steps 1 and 2, and its label switches to finishLabel on the last step.
- Clicking Continue/Finish on the last step is intentionally left inert beyond the label change, actually creating the account is a backend action out of scope for this demo.
- The `steps` prop only relabels the stepper; the underlying field sets per step (email+password, name+avatar affordance, workspace name) are fixed and not data-driven.
- The avatar "Upload photo" button and photo circle are a visual affordance only, no real file picker is wired up.
More Auth Blocks
View all →centered-sign-in-card
Centered Sign In Card
Full-height centered sign-in card with social buttons, a password show/hide toggle, and remember-me.
split-screen-sign-up
Split-Screen Sign Up
Two-column registration screen with a sign-up form on one side and a full-bleed photo with a customer quote on the other.
email-verification-code
Email Verification Code
Full-height OTP screen with a 6-digit segmented code input, auto-advancing focus, and a live resend countdown.
forgot-password-request
Forgot Password Request
Full-height password recovery screen with a single email field, a send-reset-link button, and a back-to-sign-in link.
set-new-password
Set New Password
Full-height reset-password screen with independent show/hide toggles per field and a live password-requirements checklist.
magic-link-sign-in
Magic Link Sign In
Full-height passwordless sign-in screen with an email field, a send-magic-link button, and social login as a fallback.