Passwordless Code Sign InPRO

A centered passwordless card that advances in place from a work email step with an SSO fallback to a monospace one-time-code entry with resend and go-back controls.

Auth51: Passwordless Code Sign In

A centered passwordless card that advances in place from a work email step with an SSO fallback to a monospace one-time-code entry with resend and go-back controls.

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.

Upgrade Now

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/auth51?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

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

This installs the block to components/beste/block/auth51.tsx, the shadcn/ui input component it depends on, and the button21 component it uses for the actions.

Quick start

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

tsx
import { Auth51, auth51Demo } from "@/components/beste/block/auth51";

export default function SignInPage() {
  return <Auth51 {...auth51Demo} />;
}

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

tsx
import { Auth51 } from "@/components/beste/block/auth51";

export default function SignInPage() {
  return (
    <Auth51
      wordmark="sirius"
      emailStep={{
        heading: "Sign in without a password",
        description: "We send a six-digit code that works once and expires in ten minutes.",
        label: "Work email",
        placeholder: "you@practice.com",
        submitLabel: "Send me a code",
        dividerLabel: "or",
        ssoButton: { label: "Use your practice identity provider", href: "/auth/sso" },
      }}
      codeStep={{
        heading: "Check your email",
        description: "It is valid for ten minutes and can only be used once.",
        length: 6,
        resendLabel: "Send it again",
        submitLabel: "Sign in",
        backLabel: "Use a different email",
      }}
      footer={{ label: "No workspace yet?", link: { label: "Create one", href: "/signup" } }}
    />
  );
}

Props

PropTypeDefaultDescription
wordmarkstringLowercase wordmark at the top of the card
emailStepEmailStepCopy for the first step, including the SSO fallback
codeStepCodeStepCopy for the second step and how many digits to render
footerFooterLinkSign-up prompt under the card's hairline
classNamestringExtra classes for the outer section
ts
type EmailStep = {
  heading: string;
  description: string;
  label: string;
  placeholder: string;
  submitLabel: string;
  dividerLabel: string;
  ssoButton: { label: string; href: string };
};

type CodeStep = {
  heading: string;
  description: string;
  length: number;
  resendLabel: string;
  submitLabel: string;
  backLabel: string;
};

type FooterLink = {
  label: string;
  link: { label: string; href: string };
};

Behavior notes

Wiring the form up

Both steps render their fields and leave submission to you. For validation, error states and submit handling, the patterns in React Hook Form, TanStack Form, and Formisch cover this shape of multi-step form.

More Auth blocks

View all Auth
FREE

auth1

Centered Sign In Card

Full-height centered sign-in screen with social login providers, email and password fields, a show/hide password toggle, remember-me checkbox, and forgot-password link. Perfect for SaaS apps, dashboards, and member portals.

FREE

auth13

Centered Sign Up Card

Full-height centered registration card with social providers, name, email, and password fields (with show/hide), a terms checkbox, and a sign-in link. Perfect for SaaS sign-up pages that don't need a split layout.

PRO

auth21

Passkey Sign In

Full-height passwordless sign-in screen with a fingerprint icon, a continue-with-passkey button, and a password fallback below a divider. Perfect for WebAuthn and biometric authentication flows.

PRO

auth14

Enterprise SSO Sign In

Full-height single sign-on screen with a work-email field, a continue-with-SSO button, and Google and Microsoft providers below a divider. Perfect for B2B and enterprise apps that authenticate via identity providers.

PRO

auth52

Password Reset With Live Strength

A centered password reset card whose segmented strength meter and checked requirement list update as the field is typed, with a confirmation field and a breach-check note underneath.

PRO

auth34

Email-First Sign In

Full-height progressive sign-in that asks for the email first, then reveals the password step with the chosen email shown and editable. Perfect for modern email-first and adaptive authentication flows.