{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "empty-project-01",
  "title": "Empty Project State",
  "description": "A polished first-run state for creating or importing a project.",
  "dependencies": [
    "lucide-react"
  ],
  "registryDependencies": [
    "@rivelle/utils",
    "@rivelle/button",
    "@rivelle/empty"
  ],
  "files": [
    {
      "path": "registry/nova/blocks/empty-project-01.tsx",
      "content": "import * as React from \"react\";\nimport { ArrowRight, FolderPlus, Sparkles, Upload } from \"lucide-react\";\n\nimport { Button } from \"@/components/ui/button\";\nimport {\n  Empty,\n  EmptyContent,\n  EmptyDescription,\n  EmptyHeader,\n  EmptyMedia,\n  EmptyTitle,\n} from \"@/components/ui/empty\";\nimport { cn } from \"@/lib/utils\";\n\nfunction EmptyProject01({\n  className,\n  ...props\n}: React.ComponentProps<\"section\">) {\n  return (\n    <section\n      className={cn(\n        \"relative grid min-h-[560px] place-items-center overflow-hidden rounded-[2rem] border border-foreground/10 bg-background p-6\",\n        className,\n      )}\n      {...props}\n    >\n      <div className=\"absolute inset-0 [background-image:radial-gradient(circle_at_center,color-mix(in_oklch,var(--primary)_10%,transparent),transparent_42%),linear-gradient(to_right,color-mix(in_oklch,var(--foreground)_4%,transparent)_1px,transparent_1px),linear-gradient(to_bottom,color-mix(in_oklch,var(--foreground)_4%,transparent)_1px,transparent_1px)] [background-size:auto,40px_40px,40px_40px] [mask-image:radial-gradient(circle_at_center,black,transparent_70%)]\" />\n      <Empty className=\"relative max-w-xl border-0 bg-transparent\">\n        <EmptyHeader>\n          <EmptyMedia variant=\"icon\">\n            <FolderPlus />\n          </EmptyMedia>\n          <div className=\"mb-1 flex items-center justify-center gap-1.5 text-xs font-semibold uppercase tracking-[.12em] text-primary\">\n            <Sparkles className=\"size-3.5\" />\n            Your first project\n          </div>\n          <EmptyTitle>Turn an idea into something real.</EmptyTitle>\n          <EmptyDescription>\n            Create a blank project or import an existing design. Your team can\n            join whenever you are ready.\n          </EmptyDescription>\n        </EmptyHeader>\n        <EmptyContent>\n          <Button>\n            Create project <ArrowRight />\n          </Button>\n          <Button variant=\"outline\">\n            <Upload /> Import project\n          </Button>\n        </EmptyContent>\n        <p className=\"mt-2 text-xs text-muted-foreground\">\n          Projects are private until you share them.\n        </p>\n      </Empty>\n    </section>\n  );\n}\n\nexport { EmptyProject01 };\n",
      "type": "registry:block"
    }
  ],
  "type": "registry:block"
}