{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "name": "formscn",
  "homepage": "https://formscn.space",
  "items": [
{
      "name": "base-form",
      "type": "registry:block",
      "description": "Base form dependencies",
      "files": [
        {
          "path": "src/lib/utils.ts",
          "type": "registry:lib",
          "target": "lib/utils.ts"
        }
      ],
      "dependencies": [
        "clsx",
        "tailwind-merge"
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json",
        "https://formscn.space/r/checkbox.json",
        "https://formscn.space/r/radio-group.json",
        "https://formscn.space/r/field.json",
        "https://formscn.space/r/popover.json",
        "https://formscn.space/r/calendar.json",
        "https://formscn.space/r/progress.json",
        "https://formscn.space/r/switch.json"
      ]
    },
    {
      "name": "button",
      "type": "registry:ui",
      "description": "Button component",
      "files": [
        {
          "path": "src/components/ui/button.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@base-ui/react", "class-variance-authority"]
    },
    {
      "name": "card",
      "type": "registry:ui",
      "description": "Card component",
      "files": [
        {
          "path": "src/components/ui/card.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "input",
      "type": "registry:ui",
      "description": "Input component",
      "files": [
        {
          "path": "src/components/ui/input.tsx",
          "type": "registry:ui"
        }
      ],
"dependencies": ["@base-ui/react"]
    },
    {
      "name": "switch",
      "type": "registry:ui",
      "description": "Switch component",
      "files": [
        {
          "path": "src/components/ui/switch.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@base-ui/react"]
    },
    {
      "name": "textarea",
      "type": "registry:ui",
      "description": "Textarea component",
      "files": [
        {
          "path": "src/components/ui/textarea.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "label",
      "type": "registry:ui",
      "description": "Label component",
      "files": [
        {
          "path": "src/components/ui/label.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@radix-ui/react-label", "class-variance-authority"]
    },
    {
      "name": "select",
      "type": "registry:ui",
      "description": "Select component",
      "files": [
        {
          "path": "src/components/ui/select.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@radix-ui/react-select"]
    },
    {
      "name": "checkbox",
      "type": "registry:ui",
      "description": "Checkbox component",
      "files": [
        {
          "path": "src/components/ui/checkbox.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@radix-ui/react-checkbox"]
    },
    {
      "name": "radio-group",
      "type": "registry:ui",
      "description": "Radio Group component",
      "files": [
        {
          "path": "src/components/ui/radio-group.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@radix-ui/react-radio-group"]
    },
{
      "name": "phone-input",
      "type": "registry:ui",
      "description": "Phone input component with country selection",
      "files": [
        {
          "path": "src/components/ui/phone-input.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": [
        "react-phone-number-input",
        "libphonenumber-js"
      ],
      "registryDependencies": [
        "https://formscn.space/r/label.json"
      ]
    },
    {
      "name": "field",
      "type": "registry:ui",
      "description": "Field components for TanStack Form (Field, FieldLabel, FieldError, FieldDescription)",
      "files": [
        {
          "path": "src/components/ui/field.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/label.json"
      ]
    },
    {
      "name": "popover",
      "type": "registry:ui",
      "description": "Popover component",
      "files": [
        {
          "path": "src/components/ui/popover.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@base-ui/react"]
    },
    {
      "name": "calendar",
      "type": "registry:ui",
      "description": "Calendar component",
      "files": [
        {
          "path": "src/components/ui/calendar.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["react-day-picker", "lucide-react"],
      "registryDependencies": [
        "https://formscn.space/r/button.json"
      ]
    },
    {
      "name": "progress",
      "type": "registry:ui",
      "description": "Progress component",
      "files": [
        {
          "path": "src/components/ui/progress.tsx",
          "type": "registry:ui"
        }
      ],
      "dependencies": ["@base-ui/react"]
    },
    {
      "name": "auth-client",
      "type": "registry:lib",
      "description": "Better Auth React client utilities",
      "dependencies": [
        "better-auth"
      ],
      "files": [
        {
          "path": "src/registry/default/lib/auth-client.ts",
          "type": "registry:lib",
          "target": "lib/auth-client.ts"
        }
      ]
    },
    {
      "name": "login-form",
      "type": "registry:block",
      "description": "Simple email and password login form",
      "files": [
        {
          "path": "src/registry/default/templates/login-form.tsx",
          "type": "registry:block",
          "target": "components/forms/login-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/auth-client.json",
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/label.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "signup-form",
      "type": "registry:block",
      "description": "User registration form with email and password",
      "files": [
        {
          "path": "src/registry/default/templates/signup-form.tsx",
          "type": "registry:block",
          "target": "components/forms/signup-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/auth-client.json",
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/label.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "contact-form",
      "type": "registry:block",
      "description": "Contact form with name, email, subject, and message",
      "files": [
        {
          "path": "src/registry/default/templates/contact-form.tsx",
          "type": "registry:block",
          "target": "components/forms/contact-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "newsletter-form",
      "type": "registry:block",
      "description": "Newsletter subscription form with email frequency selection",
      "files": [
        {
          "path": "src/registry/default/templates/newsletter-form.tsx",
          "type": "registry:block",
          "target": "components/forms/newsletter-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/radio-group.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "job-application-form",
      "type": "registry:block",
      "description": "Job application form with resume and cover letter",
      "files": [
        {
          "path": "src/registry/default/templates/job-application-form.tsx",
          "type": "registry:block",
          "target": "components/forms/job-application-form.tsx"
        }
      ],
"registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json",
"https://formscn.space/r/phone-input.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner",
        "react-phone-number-input",
        "libphonenumber-js"
      ]
    },
    {
      "name": "feedback-form",
      "type": "registry:block",
      "description": "Product feedback form with rating and comments",
      "files": [
        {
          "path": "src/registry/default/templates/feedback-form.tsx",
          "type": "registry:block",
          "target": "components/forms/feedback-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json",
        "https://formscn.space/r/checkbox.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "event-registration-form",
      "type": "registry:block",
      "description": "Event registration form with attendee details",
      "files": [
        {
          "path": "src/registry/default/templates/event-registration-form.tsx",
          "type": "registry:block",
          "target": "components/forms/event-registration-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "waitlist-form",
      "type": "registry:block",
      "description": "Waitlist signup form",
      "files": [
        {
          "path": "src/registry/default/templates/waitlist-form.tsx",
          "type": "registry:block",
          "target": "components/forms/waitlist-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/radio-group.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "support-ticket-form",
      "type": "registry:block",
      "description": "Support ticket submission form",
      "files": [
        {
          "path": "src/registry/default/templates/support-ticket-form.tsx",
          "type": "registry:block",
          "target": "components/forms/support-ticket-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "booking-request-form",
      "type": "registry:block",
      "description": "Booking request form with date and service selection",
      "files": [
        {
          "path": "src/registry/default/templates/booking-request-form.tsx",
          "type": "registry:block",
          "target": "components/forms/booking-request-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json",
        "https://formscn.space/r/radio-group.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "ecommerce-checkout-form",
      "type": "registry:block",
      "description": "Checkout form with shipping and payment details",
      "files": [
        {
          "path": "src/registry/default/templates/ecommerce-checkout-form.tsx",
          "type": "registry:block",
          "target": "components/forms/ecommerce-checkout-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/radio-group.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "onboarding-wizard-form",
      "type": "registry:block",
      "description": "Multi-step user onboarding wizard",
      "files": [
        {
          "path": "src/registry/default/templates/onboarding-wizard-form.tsx",
          "type": "registry:block",
          "target": "components/forms/onboarding-wizard-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json",
        "https://formscn.space/r/checkbox.json"
      ],
      "dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner"
      ]
    },
    {
      "name": "detailed-application-form",
      "type": "registry:block",
      "description": "Multi-step detailed application form",
      "files": [
        {
          "path": "src/registry/default/templates/detailed-application-form.tsx",
          "type": "registry:block",
          "target": "components/forms/detailed-application-form.tsx"
        }
      ],
      "registryDependencies": [
        "https://formscn.space/r/button.json",
        "https://formscn.space/r/card.json",
        "https://formscn.space/r/input.json",
        "https://formscn.space/r/textarea.json",
        "https://formscn.space/r/label.json",
        "https://formscn.space/r/select.json"
      ],
"dependencies": [
        "react-hook-form",
        "@hookform/resolvers",
        "zod",
        "sonner",
        "react-phone-number-input",
        "libphonenumber-js"
      ]
    },
    {
      "name": "form-generator",
      "type": "registry:lib",
      "description": "Form code generation utilities",
      "dependencies": [
        "zod"
      ],
      "files": [
        {
          "path": "src/registry/default/lib/form-generator.ts",
          "type": "registry:lib",
          "target": "lib/form-generator.ts"
        },
        {
          "path": "src/registry/default/types.ts",
          "type": "registry:lib",
          "target": "lib/types.ts"
        }
      ]
    }
  ]
}
