20% offProwith

Buy now

Flow

Sign in

shadcn addsign-in
Detent

Wire it up

All optional. With none, it plays exactly as it does here and hands over to whoever touches it.

Usage
<SignIn
  providers={providers}
  workspaces={workspaces}
  waiting={waiting}
  onComplete={(workspace) => {}}
/>

Your data

providers

The one-press providers, in order. An empty list leaves email on its own.

('google' | 'github')[]
Default['google', 'github']
workspaces

The workspaces to choose from once you’re in: a name, a line under it and a hue.

Workspace[]
Default—
waiting

What’s waiting on the other side, beside the form and redacted until a person is in. An empty list gives the form the whole window.

Waiting[]
Default—
product

The product being signed in to: the heading, the mark’s label, the email and the consent sheet.

string
Default'Detent'

What it tells you

onComplete

Called with the workspace a person picks.

(workspace: Workspace) => void
Default—

Every block also takes accent, the one colour everything in it derives from; autoplay, which plays the demo until someone touches it; and className.