# Passkey

> Passkey for Two-Factor Setup.

A shadcn/ui block from the [@flx](https://ui.flexnative.com) registry, listed on [shadcn.exchange](https://shadcn.exchange/r/flx/two-factor-setup-3).

- Page, with a live preview: https://shadcn.exchange/r/flx/two-factor-setup-3
- Screenshot: https://abzjhwgwpdpz7ua5.public.blob.vercel-storage.com/shots/flx/two-factor-setup-3-light-4e7656c91054f810.png
- Registry item: https://ui.flexnative.com/r/two-factor-setup-3.json
- Listed: 2026-10-13, source last changed 2026-10-13

## Install

```bash
npx shadcn@latest add https://ui.flexnative.com/r/two-factor-setup-3.json
```

Run it in a project that has shadcn/ui set up. It adds the files below and installs what they depend on.

## Dependencies

- npm packages: `lucide-react`
- Registry items: `button`, `card`

## Files

### `registry/intents/auth/two-factor-setup/two-factor-setup-3.tsx`

```tsx
import { FingerprintIcon } from 'lucide-react'

import { Button } from '@/components/ui/button'
import {
  Card,
  CardContent,
  CardFooter,
  CardHeader,
  CardTitle,
} from '@/components/ui/card'

export function TwoFactorSetup3() {
  return (
    <Card size="sm">
      <CardHeader>
        <div className="bg-primary/10 mb-1 flex size-10 items-center justify-center rounded-full">
          <FingerprintIcon className="text-primary size-5" />
        </div>
        <CardTitle>Add a passkey</CardTitle>
        <p className="text-muted-foreground text-xs">
          Use Face ID, a fingerprint, or a security key. Nothing to type, and
          nothing phishable.
        </p>
      </CardHeader>

      <CardContent>
        <ul className="text-muted-foreground flex flex-col gap-2 text-xs">
          <li className="flex items-center gap-2">
            <span className="bg-primary size-1.5 rounded-full" />
            Works across your synced devices
          </li>
          <li className="flex items-center gap-2">
            <span className="bg-primary size-1.5 rounded-full" />
            Resistant to phishing and credential theft
          </li>
        </ul>
      </CardContent>

      <CardFooter className="flex-col items-stretch gap-4">
        <Button className="w-full">
          <FingerprintIcon />
          Create passkey
        </Button>
        <p className="text-muted-foreground/80 text-center text-[11px]">
          Requires a device with biometrics or a hardware key.
        </p>
      </CardFooter>
    </Card>
  )
}
```
