auth-12
freddy/auth-12FreeBlock
Multi-step split layout onboarding form.
Install it
npx shadcn@latest add https://ui.arkcabin.com/r/auth-12.jsonSource
1"use client";23import {4 BuildingIcon,5 CheckIcon,6 ChevronRight,7 SparklesIcon,8 UserIcon,9} from "lucide-react";10import { useState } from "react";11import { LogoIcon } from "@/components/logo";12import { Button } from "@/components/ui/button";13import { Input } from "@/components/ui/input";14import { Label } from "@/components/ui/label";15import { cn } from "@/lib/utils";1617const STEPS = [18 { id: 1, title: "Personal Details", icon: UserIcon },19 { id: 2, title: "Your Goals", icon: SparklesIcon },20 { id: 3, title: "Organization", icon: BuildingIcon },21];2223export function OnboardingForm() {24 const [currentStep, setCurrentStep] = useState(1);2526 return (27 <div className="grid min-h-screen w-full lg:grid-cols-[400px_1fr]">28 {/* Sidebar Progress Tracker */}29 <div className="hidden flex-col border-r bg-zinc-50/50 p-10 lg:flex dark:bg-zinc-950/20">30 <div className="mb-16 flex items-center gap-2">31 <LogoIcon className="size-6" />32 <span className="font-bold text-lg tracking-tight">Freddy</span>33 </div>3435 <div className="space-y-12">36 {STEPS.map((step) => {37 const isActive = step.id === currentStep;38 const isCompleted = step.id < currentStep;3940 return (41 <div42 className="group relative flex items-center gap-6"43 key={step.id}44 >45 {step.id !== 3 && (46 <div47 className={cn(48 "absolute top-10 left-[19px] h-12 w-px bg-border transition-colors duration-500",49 isCompleted && "bg-primary/50"50 )}51 />52 )}5354 <div55 className={cn(56 "relative z-10 flex size-10 items-center justify-center rounded-full border bg-background transition-all duration-500",57 "relative z-10 flex size-10 items-center justify-center rounded-full border bg-background transition-all duration-500",58 isActive &&59 "border-primary shadow-sm ring-4 ring-primary/10",60 isCompleted &&61 "border-primary bg-primary text-primary-foreground",62 !(isActive || isCompleted) &&63 "border-muted text-muted-foreground"64 )}65 >66 {isCompleted ? (67// … truncated
What it pulls in
Other registry items
Files it writes
More from freddy
All 60 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| announcement-1announcement-1 | freddy | Blocks | Free | 1 dep | |
| announcement-2announcement-2 | freddy | Blocks | Free | 1 dep | |
| announcement-3announcement-3 | freddy | Blocks | Free | 1 dep | |
| auth-1auth-1 | freddy | Blocks | Free | no deps · 2 files | |
| auth-10auth-10 | freddy | Blocks | Free | no deps | |
| auth-11auth-11 | freddy | Blocks | Free | no deps | |
| auth-2auth-2 | freddy | Blocks | Free | 1 dep · 3 files | |
| auth-3auth-3 | freddy | Blocks | Free | no deps · 2 files |
