{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "name": "corr",
  "homepage": "https://ui.corr.sh",
  "items": [
    {
      "name": "accordion-list",
      "type": "registry:component",
      "title": "Accordion List",
      "description": "A clean accordion list wrapper for FAQs, settings, and dense help content.",
      "registryDependencies": [
        "accordion",
        "card"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/accordion-list.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-buttons",
      "type": "registry:component",
      "title": "Animated Buttons",
      "description": "Animated action buttons that transition through hover, loading, and complete states.",
      "registryDependencies": [
        "button"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-buttons.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-copy-button",
      "type": "registry:component",
      "title": "Animated Copy Button",
      "description": "A copy button that animates between idle and copied states.",
      "registryDependencies": [
        "button"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-copy-button.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-dialog",
      "type": "registry:component",
      "title": "Animated Dialog",
      "description": "A dialog wrapper with subtle Motion transitions for confirmation and form flows.",
      "registryDependencies": [
        "button",
        "dialog"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/animated-dialog.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-disclosure",
      "type": "registry:component",
      "title": "Animated Disclosure",
      "description": "An expandable disclosure panel with vertical and horizontal motion directions.",
      "registryDependencies": [
        "button"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-disclosure.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-list",
      "type": "registry:component",
      "title": "Animated List",
      "description": "A generic list wrapper with Motion entry, exit, and reorder transitions.",
      "registryDependencies": [],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-list.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-number",
      "type": "registry:component",
      "title": "Animated Number",
      "description": "A NumberFlow-powered animated number primitive for counters, timers, and metrics.",
      "registryDependencies": [],
      "dependencies": [
        "@number-flow/react"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-number.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-progress",
      "type": "registry:component",
      "title": "Animated Progress",
      "description": "A smooth progress bar with determinate, semantic, and pending states.",
      "registryDependencies": [],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-progress.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-spinner",
      "type": "registry:component",
      "title": "Animated Spinner",
      "description": "A restrained Motion-powered spinner for buttons, cards, and async loading states.",
      "registryDependencies": [
        "https://ui.corr.sh/r/animated-number.json"
      ],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-spinner.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "animated-toggle-card",
      "type": "registry:component",
      "title": "Animated Toggle Card",
      "description": "Selectable cards with a shared animated active state.",
      "registryDependencies": [],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/animated-toggle-card.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "area-chart",
      "type": "registry:component",
      "title": "Area Chart",
      "description": "A styled EvilCharts area chart for showing trends with filled ranges, gradients, brushes, and selection states.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/area-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "audit-log",
      "type": "registry:block",
      "title": "Audit Log",
      "description": "A timestamped activity log block for registry and product events.",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/audit-log.tsx",
          "type": "registry:block"
        }
      ]
    },
    {
      "name": "availability",
      "type": "registry:component",
      "title": "Availability",
      "description": "A draggable weekly availability scheduler for creating, resizing, moving, disabling, and deleting time spans.",
      "registryDependencies": [
        "button"
      ],
      "dependencies": [
        "@dnd-kit/core",
        "@dnd-kit/utilities",
        "lucide-react",
        "nanoid"
      ],
      "files": [
        {
          "path": "registry/corr/components/availability.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "bar-chart",
      "type": "registry:component",
      "title": "Bar Chart",
      "description": "A styled EvilCharts bar chart for comparing categories with stacked, gradient, hatched, and horizontal variants.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/bar-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "carousel",
      "type": "registry:component",
      "title": "Carousel",
      "description": "A center-snapping carousel primitive with responsive edge blur and button controls.",
      "registryDependencies": [
        "button"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/carousel.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "chart-empty-loading-error",
      "type": "registry:component",
      "title": "Chart Empty Loading Error",
      "description": "A standardized chart state frame for ready, loading, empty, and error states.",
      "registryDependencies": [
        "button",
        "https://ui.corr.sh/r/empty-state.json",
        "https://ui.corr.sh/r/notice-alert.json",
        "https://ui.corr.sh/r/shimmer-skeleton.json"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/chart-empty-loading-error.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "code-block",
      "type": "registry:component",
      "title": "Code Block",
      "description": "A copyable code block with line numbers, language selection, and lightweight language-aware syntax highlighting.",
      "registryDependencies": [
        "button",
        "select"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/code-block.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "command-palette",
      "type": "registry:component",
      "title": "Command Palette",
      "description": "A reusable command dialog wrapper for grouped actions, app navigation, and searchable command menus.",
      "registryDependencies": [
        "button",
        "command"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/command-palette.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "component-health-panel",
      "type": "registry:component",
      "title": "Component Health Panel",
      "description": "A registry health panel for dependencies, source files, JSON URLs, and install commands.",
      "registryDependencies": [
        "badge",
        "card",
        "separator"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/component-health-panel.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "composed-chart",
      "type": "registry:component",
      "title": "Composed Chart",
      "description": "A styled EvilCharts composed chart for mixing bars and lines in a single operational view.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/composed-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "data-table",
      "type": "registry:component",
      "title": "Data Table",
      "description": "A generic data table with search, sorting, row selection, CSV export, pagination, row actions, and destructive action confirmation.",
      "registryDependencies": [
        "alert-dialog",
        "button",
        "checkbox",
        "dropdown-menu",
        "input",
        "label",
        "select",
        "skeleton",
        "table"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/data-table.tsx",
          "type": "registry:component"
        },
        {
          "path": "registry/corr/lib/typed-guard.ts",
          "type": "registry:lib"
        }
      ]
    },
    {
      "name": "date-picker-field",
      "type": "registry:component",
      "title": "Date Picker Field",
      "description": "A date picker field with local-safe date normalization and optional ISO date string output.",
      "registryDependencies": [
        "button",
        "calendar",
        "field",
        "input",
        "popover"
      ],
      "dependencies": [
        "date-fns",
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/date-picker-field.tsx",
          "type": "registry:component"
        },
        {
          "path": "registry/corr/components/stepper.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "destructive-gate",
      "type": "registry:component",
      "title": "Destructive Gate",
      "description": "A dialog and mobile drawer confirmation that gates destructive actions behind a generated three-word phrase.",
      "registryDependencies": [
        "button",
        "input",
        "label"
      ],
      "dependencies": [
        "lucide-react",
        "radix-ui",
        "vaul"
      ],
      "files": [
        {
          "path": "registry/corr/components/destructive-gate.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/ui/dialog.tsx",
          "type": "registry:ui"
        },
        {
          "path": "src/components/ui/drawer.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "action-dialog",
      "type": "registry:component",
      "title": "Dialog",
      "description": "A compact dialog wrapper for focused confirmation and form actions.",
      "registryDependencies": [
        "button",
        "dialog"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/action-dialog.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "action-drawer",
      "type": "registry:component",
      "title": "Drawer",
      "description": "A mobile-friendly drawer wrapper with title, description, content, and footer actions.",
      "registryDependencies": [
        "button",
        "drawer",
        "input"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/action-drawer.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "empty-state",
      "type": "registry:component",
      "title": "Empty State",
      "description": "A small empty-state wrapper around the shadcn empty primitive with action slots and visual variants.",
      "registryDependencies": [
        "button",
        "empty"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/empty-state.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "file-manager",
      "type": "registry:block",
      "title": "File Manager",
      "description": "A file manager block with upload, list/grid layout, and item actions.",
      "registryDependencies": [
        "button",
        "dialog",
        "dropdown-menu",
        "https://ui.corr.sh/r/file-upload-dropzone.json"
      ],
      "dependencies": [
        "@dnd-kit/core",
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/file-manager.tsx",
          "type": "registry:block"
        }
      ]
    },
    {
      "name": "file-upload-dropzone",
      "type": "registry:component",
      "title": "File Upload Dropzone",
      "description": "A controlled drag-and-drop file upload field with selected file rows.",
      "registryDependencies": [
        "button",
        "https://ui.corr.sh/r/animated-progress.json"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/file-upload-dropzone.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "filters",
      "type": "registry:component",
      "title": "Filters",
      "description": "A composable filter builder with searchable fields, operators, select and multiselect values, text validation, keyboard shortcuts, and i18n labels.",
      "registryDependencies": [
        "button",
        "button-group",
        "dropdown-menu",
        "input",
        "input-group",
        "kbd",
        "scroll-area",
        "tooltip"
      ],
      "dependencies": [
        "class-variance-authority",
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/filters.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "form-builder",
      "type": "registry:block",
      "title": "Form Builder",
      "description": "A reusable form builder block with drag-and-drop fields, JSON definitions, previews, and keyed response data.",
      "registryDependencies": [
        "badge",
        "button",
        "calendar",
        "card",
        "checkbox",
        "combobox",
        "dialog",
        "drawer",
        "input",
        "label",
        "popover",
        "scroll-area",
        "select",
        "https://ui.corr.sh/r/screen-size-guard.json",
        "https://ui.corr.sh/r/stepper.json",
        "tabs",
        "textarea"
      ],
      "dependencies": [
        "@dnd-kit/core",
        "date-fns",
        "lucide-react",
        "motion",
        "react-day-picker"
      ],
      "files": [
        {
          "path": "registry/corr/components/form-builder.tsx",
          "type": "registry:block"
        },
        {
          "path": "registry/corr/components/date-picker-field.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "kanban",
      "type": "registry:component",
      "title": "Kanban",
      "description": "A composable drag-and-drop kanban board with sortable columns, sortable cards, handles, overlays, and move callbacks.",
      "registryDependencies": [
        "tabs"
      ],
      "dependencies": [
        "@dnd-kit/core",
        "@dnd-kit/sortable",
        "@dnd-kit/utilities",
        "@radix-ui/react-slot"
      ],
      "files": [
        {
          "path": "registry/corr/components/kanban.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "key-value-list",
      "type": "registry:component",
      "title": "Key Value List",
      "description": "A small definition-list component for metadata and registry payload details.",
      "registryDependencies": [
        "context-menu",
        "https://ui.corr.sh/r/filters.json"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/key-value-list.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "line-chart",
      "type": "registry:component",
      "title": "Line Chart",
      "description": "A styled EvilCharts line chart for tracking change over time with dots, glow states, brushes, and buffer lines.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/line-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "mailbox",
      "type": "registry:block",
      "title": "Mailbox",
      "description": "A responsive mailbox block with folders, message lists, compose flow, confirmations, and toast feedback.",
      "registryDependencies": [
        "alert-dialog",
        "avatar",
        "badge",
        "button",
        "card",
        "combobox",
        "context-menu",
        "dialog",
        "dropdown-menu",
        "https://ui.corr.sh/r/file-upload-dropzone.json",
        "input",
        "menubar",
        "resizable",
        "https://ui.corr.sh/r/scroll-blur.json",
        "separator",
        "sidebar",
        "sonner",
        "textarea",
        "toggle-group"
      ],
      "dependencies": [
        "lucide-react",
        "sonner"
      ],
      "files": [
        {
          "path": "registry/corr/components/mailbox.tsx",
          "type": "registry:block"
        }
      ]
    },
    {
      "name": "metric-badge",
      "type": "registry:component",
      "title": "Metric Badge",
      "description": "A small badge for counts, states, and operational tags with semantic tones.",
      "registryDependencies": [
        "badge"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/metric-badge.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "metric-chart-card",
      "type": "registry:component",
      "title": "Metric Chart Card",
      "description": "A compact metric card with animated numbers, deltas, and a small line, bar, or area chart.",
      "registryDependencies": [
        "card",
        "chart"
      ],
      "dependencies": [
        "@number-flow/react",
        "lucide-react",
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "registry/corr/components/metric-chart-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "registry/corr/components/animated-number.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "notice-alert",
      "type": "registry:component",
      "title": "Notice Alert",
      "description": "A restrained alert wrapper with info, success, warning, and destructive tones.",
      "registryDependencies": [
        "alert"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/notice-alert.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "pie-chart",
      "type": "registry:component",
      "title": "Pie Chart",
      "description": "A styled EvilCharts pie chart for showing parts of a whole with labels, legends, and donut variants.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/pie-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "presence-fade",
      "type": "registry:component",
      "title": "Presence Fade",
      "description": "A tiny mount and unmount wrapper for fade, scale, and slide transitions.",
      "registryDependencies": [],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/presence-fade.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "preview-data-provider",
      "type": "registry:component",
      "title": "Preview Data Provider",
      "description": "A shared mock data provider for consistent registry demos and examples.",
      "registryDependencies": [],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/preview-data-provider.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "preview-link",
      "type": "registry:component",
      "title": "Preview Link",
      "description": "A link wrapper that shows a static page preview card on hover.",
      "registryDependencies": [],
      "dependencies": [
        "motion",
        "radix-ui"
      ],
      "files": [
        {
          "path": "registry/corr/components/preview-link.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/animate-ui/components/radix/preview-link-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/animate-ui/primitives/radix/preview-link-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/animate-ui/primitives/radix/hover-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/lib/get-strict-context.tsx",
          "type": "registry:lib"
        },
        {
          "path": "src/hooks/use-controlled-state.tsx",
          "type": "registry:lib"
        }
      ]
    },
    {
      "name": "profile-avatar",
      "type": "registry:component",
      "title": "Profile Avatar",
      "description": "An animated profile avatar preview that morphs from the trigger into a focused overlay.",
      "registryDependencies": [
        "avatar"
      ],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/profile-avatar.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "project-card-carousel",
      "type": "registry:block",
      "title": "Project Card Carousel",
      "description": "A responsive project carousel block with preview cards, edge blur, controls, stack badges, and contact-link handling.",
      "registryDependencies": [
        "badge",
        "button",
        "card",
        "https://ui.corr.sh/r/carousel.json"
      ],
      "dependencies": [
        "lucide-react",
        "motion",
        "radix-ui"
      ],
      "files": [
        {
          "path": "registry/corr/components/project-card-carousel.tsx",
          "type": "registry:block"
        },
        {
          "path": "src/components/animate-ui/components/radix/preview-link-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/animate-ui/primitives/radix/preview-link-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/animate-ui/primitives/radix/hover-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/lib/get-strict-context.tsx",
          "type": "registry:lib"
        },
        {
          "path": "src/hooks/use-controlled-state.tsx",
          "type": "registry:lib"
        }
      ]
    },
    {
      "name": "radar-chart",
      "type": "registry:component",
      "title": "Radar Chart",
      "description": "A styled EvilCharts radar chart for comparing multi-metric profiles across radial axes.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/radar-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "radial-chart",
      "type": "registry:component",
      "title": "Radial Chart",
      "description": "A styled EvilCharts radial chart for circular totals, progress groups, and semi-radial layouts.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/radial-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "registry-install-card",
      "type": "registry:component",
      "title": "Registry Install Card",
      "description": "A registry install surface with copy actions, JSON links, and compact usage metrics.",
      "registryDependencies": [
        "badge",
        "button",
        "card",
        "separator"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/registry-install-card.tsx",
          "type": "registry:component"
        },
        {
          "path": "registry/corr/components/animated-copy-button.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "responsive-preview-shell",
      "type": "registry:component",
      "title": "Responsive Preview Shell",
      "description": "A responsive preview utility with viewport controls and a smooth carousel with soft blurred edges.",
      "registryDependencies": [
        "button",
        "https://ui.corr.sh/r/carousel.json",
        "toggle-group"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/responsive-preview-shell.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "sankey-chart",
      "type": "registry:component",
      "title": "Sankey Chart",
      "description": "A styled EvilCharts sankey chart for weighted flows between stages.",
      "registryDependencies": [
        "https://ui.corr.sh/r/chart-empty-loading-error.json"
      ],
      "dependencies": [
        "motion",
        "recharts"
      ],
      "files": [
        {
          "path": "src/components/evilcharts/charts/sankey-chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/chart.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/tooltip.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/legend.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/background.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/dot.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/evilcharts/ui/evil-brush.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "screen-size-guard",
      "type": "registry:component",
      "title": "Screen Size Guard",
      "description": "A responsive fallback wrapper for components that are not ready for smaller screens yet.",
      "registryDependencies": [],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/screen-size-guard.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "scroll-blur",
      "type": "registry:component",
      "title": "Scroll Blur",
      "description": "A scroll utility with top, bottom, left, and right edge blurs plus optional snap-item helpers.",
      "registryDependencies": [],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/scroll-blur.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "section-tabs",
      "type": "registry:component",
      "title": "Section Tabs",
      "description": "A compact tabs wrapper for switching between related panels.",
      "registryDependencies": [
        "tabs"
      ],
      "dependencies": [],
      "files": [
        {
          "path": "registry/corr/components/section-tabs.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "settings-page",
      "type": "registry:block",
      "title": "Settings Page",
      "description": "A responsive settings page block with profile, notification, and security sections.",
      "registryDependencies": [
        "button",
        "card",
        "field",
        "input",
        "separator",
        "switch",
        "tabs"
      ],
      "dependencies": [
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/settings-page.tsx",
          "type": "registry:block"
        }
      ]
    },
    {
      "name": "shimmer-skeleton",
      "type": "registry:component",
      "title": "Shimmer Skeleton",
      "description": "A subtle shimmer skeleton for loading cards, lists, and table rows.",
      "registryDependencies": [],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/shimmer-skeleton.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "status-page",
      "type": "registry:block",
      "title": "Status Page",
      "description": "A status page block with uptime metrics, GitHub-style day bars, service filtering, and incident history.",
      "registryDependencies": [
        "badge",
        "button",
        "card",
        "dropdown-menu",
        "input",
        "input-group",
        "kbd",
        "scroll-area",
        "separator",
        "tooltip"
      ],
      "dependencies": [
        "@number-flow/react",
        "class-variance-authority",
        "lucide-react",
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/status-page.tsx",
          "type": "registry:block"
        },
        {
          "path": "registry/corr/components/animated-number.tsx",
          "type": "registry:component"
        },
        {
          "path": "registry/corr/components/filters.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "status-pill",
      "type": "registry:component",
      "title": "Status Pill",
      "description": "A compact status badge with semantic color, icon, and label variants for operational interfaces.",
      "registryDependencies": [
        "badge"
      ],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/status-pill.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "stepper",
      "type": "registry:component",
      "title": "Stepper",
      "description": "A compact horizontal or vertical stepper for install, publish, and form flows.",
      "registryDependencies": [],
      "dependencies": [
        "lucide-react"
      ],
      "files": [
        {
          "path": "registry/corr/components/stepper.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "timeline",
      "type": "registry:component",
      "title": "Timeline",
      "description": "A composable horizontal timeline with draggable slots, rows, drop validation, current-time markers, and custom slot rendering.",
      "registryDependencies": [
        "button",
        "field",
        "input",
        "popover",
        "select"
      ],
      "dependencies": [
        "@dnd-kit/core",
        "@radix-ui/react-slot",
        "tunnel-rat"
      ],
      "files": [
        {
          "path": "registry/corr/components/timeline.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "toast-action",
      "type": "registry:component",
      "title": "Toast Action",
      "description": "A simple sonner toast trigger with title, description, and undo action.",
      "registryDependencies": [
        "button",
        "sonner"
      ],
      "dependencies": [
        "sonner"
      ],
      "files": [
        {
          "path": "registry/corr/components/toast-action.tsx",
          "type": "registry:component"
        }
      ]
    },
    {
      "name": "typography-effects",
      "type": "registry:component",
      "title": "Typography Effects",
      "description": "Motion typography utilities for shimmer text, cycling loading messages, and lyric-style active word emphasis.",
      "registryDependencies": [
        "button"
      ],
      "dependencies": [
        "motion"
      ],
      "files": [
        {
          "path": "registry/corr/components/typography-effects.tsx",
          "type": "registry:component"
        },
        {
          "path": "src/components/animate-ui/primitives/texts/shimmering.tsx",
          "type": "registry:component"
        }
      ]
    }
  ]
}
