Signup Card Form
Card-based signup form with name, email, password, and confirm password fields. Swap the field description copy for the client's own password rules and privacy language.
Live preview
open in new tab ↗import { Button } from "@/components/ui/button"
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"
import { Field, FieldDescription, FieldGroup, FieldLabel } from "@/components/ui/field"
import { Input } from "@/components/ui/input"
export function SignupForm(props) {
return (
<Card {...props}>
<CardHeader>
<CardTitle>Create an account</CardTitle>
<CardDescription>Enter your information below to create your account</CardDescription>
</CardHeader>
<CardContent>
<form>
<FieldGroup>
<Field>
<FieldLabel htmlFor="name">Full name</FieldLabel>
<Input id="name" type="text" placeholder="Jane Doe" required />
</Field>
<Field>
<FieldLabel htmlFor="email">Email</FieldLabel>
<Input id="email" type="email" placeholder="you@example.com" required />
<FieldDescription>We will only use this to contact you, never shared.</FieldDescription>
</Field>
<Field>
<FieldLabel htmlFor="password">Password</FieldLabel>
<Input id="password" type="password" required />
<FieldDescription>Must be at least 8 characters long.</FieldDescription>
</Field>
<Field>
<FieldLabel htmlFor="confirm-password">Confirm password</FieldLabel>
<Input id="confirm-password" type="password" required />
</Field>
<Field>
<Button type="submit">Create account</Button>
<Button variant="outline" type="button">Sign up with Google</Button>
<FieldDescription className="px-6 text-center">
Already have an account? <a href="#">Sign in</a>
</FieldDescription>
</Field>
</FieldGroup>
</form>
</CardContent>
</Card>
)
}Block id: shadcn-signup-01react-tailwind · swap-content
More form blocks
Want the whole site, not just the block?
We ship real client sites in 3 weeks — with blocks like this one, wired to your brand.



