Multi-Step Sign Up Wizard

Full-height multi-step registration with a numbered progress stepper that advances as the user moves through account, profile, and workspace steps, with back and continue controls. Perfect for guided onboarding sign-up.

PRO

Auth33: Multi-Step Sign Up Wizard

A full-height registration card that walks through an array of steps: a numbered progress stepper marks each step complete, active, or upcoming, and the active step renders its title plus a FieldGroup of labeled inputs, with a Back button (from step two onward) and a primary button that reads "Continue" until the final step, where it switches to "Create account".

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/auth33?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/auth33?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/auth33.tsx, plus the button, input, and field shadcn/ui primitives it uses for the step controls and the labeled form inputs.

Quick start

The installed file exports auth33Demo alongside the block: the exact props behind the preview above. Spread it to get a working sign-up wizard in one line.

tsx
import { Auth33, auth33Demo } from "@/components/beste/block/auth33";

export default function Page() {
  return <Auth33 {...auth33Demo} />;
}

Then replace the demo with your own props. Written out, a trimmed setup looks like this:

tsx
import { Auth33 } from "@/components/beste/block/auth33";

export default function Page() {
  return (
    <Auth33
      heading="Create your account"
      steps={[
        {
          label: "Account",
          title: "Your login details",
          fields: [
            { label: "Email", placeholder: "you@example.com", type: "email" },
            { label: "Password", placeholder: "Create a password", type: "password" },
          ],
        },
        {
          label: "Workspace",
          title: "Name your workspace",
          fields: [{ label: "Workspace name", placeholder: "acme", type: "text" }],
        },
      ]}
      labels={{ back: "Back", next: "Continue", submit: "Create account" }}
    />
  );
}

Props

PropTypeDefaultDescription
headingstringCentered page title above the stepper; hidden when omitted
stepsWizardStep[][]Ordered steps rendered in the stepper and the active card
labels{ back?: string; next?: string; submit?: string }{}Button text; back gates the Back button, submit shows on the last step
classNamestringExtra classes for the outer <section>
ts
type WizardField = {
  label: string;
  placeholder: string;
  type?: string;
};

type WizardStep = {
  label: string;
  title?: string;
  fields: WizardField[];
};

Behavior notes

Wiring the form up

This block ships the form markup only; state, validation, and submit are yours to add. Our guide wires the shadcn Field primitives to React Hook Form, TanStack Form, and Formisch on one field system.

More Auth blocks

View all Auth
PRO

auth46

Confirm It's You

Full-height step-up authentication screen that re-asks for the password before a sensitive action, showing the signed-in account and a cancel option. Perfect for protecting billing, security, and destructive actions.

PRO

auth24

Complete Your Profile

Full-height profile setup step with an avatar uploader, a display name field, and a bio textarea, plus a skip option. Perfect for the post-sign-up onboarding step where users personalize their account.

FREE

auth6

Magic Link Sign In

Full-height passwordless sign-in screen with a single email field, a send-magic-link button, a helper note, and social login providers below a divider. Perfect for passwordless and email-link authentication flows.

PRO

auth26

Choose Your Plan

Full-height plan selection step with a monthly/annual billing toggle and selectable plan cards that update their pricing live, plus a continue button. Perfect for paid sign-up and upgrade flows.

PRO

auth43

Join the Waitlist

Full-height waitlist capture with an email field, a join button, a social-proof line, and a sign-in link for existing users. Perfect for pre-launch and early-access landing gates.

PRO

auth10

Face ID Sign In

Full-height biometric sign-in with an animated face-scan viewfinder that runs through idle, scanning, and recognized states, plus a continue action and a password fallback. Perfect for Face ID and biometric authentication.