{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "nextjs-quickstart",
  "title": "Clerk Next.js Quickstart (App Router)",
  "description": "A quickstart for Next.js App Router with Clerk authentication.",
  "dependencies": [
    "@clerk/nextjs",
    "@clerk/ui",
    "next-themes"
  ],
  "registryDependencies": [
    "button",
    "@clerk/nextjs-clerk-provider",
    "@clerk/nextjs-middleware",
    "@clerk/nextjs-theme-provider",
    "@clerk/nextjs-header",
    "@clerk/nextjs-layout-with-header"
  ],
  "files": [
    {
      "path": "nextjs/common/layout-with-header/layout-with-header.tsx",
      "content": "import { ClerkProvider } from '@/components/clerk-provider';\nimport { Header } from '@/components/header';\nimport { ThemeProvider } from '@/components/theme-provider';\nimport type { Metadata } from 'next';\nimport { Geist, Geist_Mono } from 'next/font/google';\nimport { cn } from '@/lib/utils';\nimport './globals.css';\n\nconst geist = Geist({\n  variable: '--font-sans',\n  subsets: ['latin'],\n});\n\nconst geistMono = Geist_Mono({\n  variable: '--font-mono',\n  subsets: ['latin'],\n});\n\nexport const metadata: Metadata = {\n  title: 'Clerk Next.js Quickstart',\n  description: 'Generated by create next app',\n};\n\nexport default function RootLayout({\n  children,\n}: Readonly<{\n  children: React.ReactNode;\n}>) {\n  return (\n    <html\n      lang='en'\n      className={cn('h-full', geist.variable, geistMono.variable)}\n      suppressHydrationWarning\n    >\n      <body className='flex min-h-full flex-col antialiased'>\n        <ClerkProvider>\n          <ThemeProvider\n            attribute='class'\n            defaultTheme='system'\n            enableSystem\n            disableTransitionOnChange\n          >\n            <Header />\n            {children}\n          </ThemeProvider>\n        </ClerkProvider>\n      </body>\n    </html>\n  );\n}\n",
      "type": "registry:page",
      "target": "app/layout.tsx"
    },
    {
      "path": "nextjs/aio/sign-in-page/page.tsx",
      "content": "import { SignIn } from '@clerk/nextjs';\n\nexport default function SignInPage() {\n  return (\n    <div className='bg-muted flex w-full flex-1 items-center justify-center p-6 md:p-10'>\n      <SignIn />\n    </div>\n  );\n}\n",
      "type": "registry:page",
      "target": "app/sign-in/[[...sign-in]]/page.tsx"
    },
    {
      "path": "nextjs/aio/sign-up-page/page.tsx",
      "content": "import { SignUp } from '@clerk/nextjs';\nimport { ChartLine, Clock, ShieldCheck, Sparkles } from 'lucide-react';\n\nexport default function SignUpPage() {\n  return (\n    <div className='bg-muted grid flex-1 lg:grid-cols-2'>\n      <div className='hidden flex-1 items-center justify-end p-6 md:p-10 lg:flex'>\n        <ul className='max-w-sm space-y-8'>\n          <li>\n            <div className='flex items-center gap-2'>\n              <Clock className='size-4' />\n              <p className='font-semibold'>Save on development time</p>\n            </div>\n            <p className='text-muted-foreground mt-2 text-sm'>\n              Add authentication and user management to your app with just a few lines of code.\n            </p>\n          </li>\n          <li>\n            <div className='flex items-center gap-2'>\n              <ChartLine className='size-4' />\n              <p className='font-semibold'>Increase engagement</p>\n            </div>\n            <p className='text-muted-foreground mt-2 text-sm'>\n              Add intuitive UIs designed to decrease friction for your users.\n            </p>\n          </li>\n          <li>\n            <div className='flex items-center gap-2'>\n              <ShieldCheck className='size-4' />\n              <p className='font-semibold'>Protect your users</p>\n            </div>\n            <p className='text-muted-foreground mt-2 text-sm'>\n              Enable features like two-step verification and enjoy automatic security updates.\n            </p>\n          </li>\n          <li>\n            <div className='flex items-center gap-2'>\n              <Sparkles className='size-4' />\n              <p className='font-semibold'>Match your brand</p>\n            </div>\n            <p className='text-muted-foreground mt-2 text-sm'>\n              Theme our pre-built components, or integrate with our easy-to-use APIs.\n            </p>\n          </li>\n        </ul>\n      </div>\n      <div className='flex flex-1 items-center justify-center p-6 md:p-10 lg:justify-start'>\n        <SignUp />\n      </div>\n    </div>\n  );\n}\n",
      "type": "registry:page",
      "target": "app/sign-up/[[...sign-up]]/page.tsx"
    }
  ],
  "css": {
    "@import \"@clerk/ui/themes/shadcn.css\"": {}
  },
  "envVars": {
    "NEXT_PUBLIC_CLERK_SIGN_IN_URL": "/sign-in",
    "NEXT_PUBLIC_CLERK_SIGN_UP_URL": "/sign-up"
  },
  "docs": "https://clerk.com/docs/quickstarts/nextjs",
  "type": "registry:block"
}