Sign up form
An account creation flow with field validation, password strength, and a clear completion state.
A passkey-first login card on a quiet ring backdrop that morphs through email and code.
npx shadcn@latest add @silicon-ui/login-centerednpx shadcn@latest add @silicon-ui/login-centeredInstall the dependencies.
npm install lucide-react motionCopy these files into your project. Shared files are skipped if you already have them.
components/silicon-ui/blocks/login-centered/login-centered.tsxcomponents/silicon-ui/blocks/login-centered/login-centered.module.csscomponents/silicon-ui/otp-input/otp-input.tsx sharedcomponents/silicon-ui/otp-input/otp-input.module.css sharedcomponents/silicon-ui/input/input.tsx sharedcomponents/silicon-ui/input/input.module.css sharedcomponents/silicon-ui/button/button.tsx sharedcomponents/silicon-ui/button/button.module.css sharedInstall the foundation once per app for the design and motion tokens: npx shadcn@latest add @silicon-ui/silicon-foundation
| Prop | Type | Default |
|---|---|---|
demoCodeThe code the simulated email contains. | string | "482913" |
fullScreenFill the viewport (100dvh, no frame) when the block is the whole page. | boolean | false |
demoEmailThe account a simulated passkey or single sign-on resolves to. | string | "maya@northwind.studio" |
termsHref | string | "#terms" |
privacyHref | string | "#privacy" |
onSignInCalled once the simulated sign in or sign up succeeds. | (email: string, method: LoginMethod, mode: Mode) => void | — |
className | string | — |