{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "name": "sevenui",
  "homepage": "https://sevenui.dev",
  "items": [
    {
      "name": "theme",
      "type": "registry:theme",
      "title": "SevenUI Theme",
      "description": "shadcn-compatible design tokens (neutral palette).",
      "cssVars": {
        "light": {
          "background": "oklch(1 0 0)",
          "foreground": "oklch(0.145 0 0)",
          "card": "oklch(1 0 0)",
          "card-foreground": "oklch(0.145 0 0)",
          "popover": "oklch(1 0 0)",
          "popover-foreground": "oklch(0.145 0 0)",
          "primary": "oklch(0.205 0 0)",
          "primary-foreground": "oklch(0.985 0 0)",
          "secondary": "oklch(0.97 0 0)",
          "secondary-foreground": "oklch(0.205 0 0)",
          "muted": "oklch(0.97 0 0)",
          "muted-foreground": "oklch(0.556 0 0)",
          "accent": "oklch(0.97 0 0)",
          "accent-foreground": "oklch(0.205 0 0)",
          "destructive": "oklch(0.577 0.245 27.325)",
          "destructive-foreground": "oklch(0.985 0 0)",
          "success": "oklch(0.627 0.194 149.214)",
          "success-foreground": "oklch(0.985 0 0)",
          "warning": "oklch(0.769 0.188 70.08)",
          "warning-foreground": "oklch(0.279 0.077 45.635)",
          "border": "oklch(0.922 0 0)",
          "input": "oklch(0.922 0 0)",
          "ring": "oklch(0.708 0 0)",
          "chart-1": "oklch(0.646 0.222 41.116)",
          "chart-2": "oklch(0.6 0.118 184.704)",
          "chart-3": "oklch(0.398 0.07 227.392)",
          "chart-4": "oklch(0.828 0.189 84.429)",
          "chart-5": "oklch(0.769 0.188 70.08)",
          "sidebar": "oklch(0.985 0 0)",
          "sidebar-foreground": "oklch(0.145 0 0)",
          "sidebar-primary": "oklch(0.205 0 0)",
          "sidebar-primary-foreground": "oklch(0.985 0 0)",
          "sidebar-accent": "oklch(0.97 0 0)",
          "sidebar-accent-foreground": "oklch(0.205 0 0)",
          "sidebar-border": "oklch(0.922 0 0)",
          "sidebar-ring": "oklch(0.708 0 0)",
          "radius": "0.625rem"
        },
        "dark": {
          "background": "oklch(0.145 0 0)",
          "foreground": "oklch(0.985 0 0)",
          "card": "oklch(0.205 0 0)",
          "card-foreground": "oklch(0.985 0 0)",
          "popover": "oklch(0.205 0 0)",
          "popover-foreground": "oklch(0.985 0 0)",
          "primary": "oklch(0.922 0 0)",
          "primary-foreground": "oklch(0.205 0 0)",
          "secondary": "oklch(0.269 0 0)",
          "secondary-foreground": "oklch(0.985 0 0)",
          "muted": "oklch(0.269 0 0)",
          "muted-foreground": "oklch(0.708 0 0)",
          "accent": "oklch(0.269 0 0)",
          "accent-foreground": "oklch(0.985 0 0)",
          "destructive": "oklch(0.704 0.191 22.216)",
          "destructive-foreground": "oklch(0.985 0 0)",
          "success": "oklch(0.723 0.219 149.579)",
          "success-foreground": "oklch(0.985 0 0)",
          "warning": "oklch(0.828 0.189 84.429)",
          "warning-foreground": "oklch(0.279 0.077 45.635)",
          "border": "oklch(1 0 0 / 10%)",
          "input": "oklch(1 0 0 / 15%)",
          "ring": "oklch(0.556 0 0)",
          "chart-1": "oklch(0.488 0.243 264.376)",
          "chart-2": "oklch(0.696 0.17 162.48)",
          "chart-3": "oklch(0.769 0.188 70.08)",
          "chart-4": "oklch(0.627 0.265 303.9)",
          "chart-5": "oklch(0.645 0.246 16.439)",
          "sidebar": "oklch(0.205 0 0)",
          "sidebar-foreground": "oklch(0.985 0 0)",
          "sidebar-primary": "oklch(0.488 0.243 264.376)",
          "sidebar-primary-foreground": "oklch(0.985 0 0)",
          "sidebar-accent": "oklch(0.269 0 0)",
          "sidebar-accent-foreground": "oklch(0.985 0 0)",
          "sidebar-border": "oklch(1 0 0 / 10%)",
          "sidebar-ring": "oklch(0.556 0 0)"
        }
      }
    },
    {
      "name": "animations",
      "type": "registry:style",
      "title": "Animations",
      "description": "SevenUI's enter/exit animation utilities (animate-in/out, fade, zoom, slide) used by the overlay components.",
      "css": {
        "@utility animate-in": {
          "animation": "enter var(--tw-duration, 0.15s) var(--tw-ease, ease) both"
        },
        "@utility animate-out": {
          "animation": "exit var(--tw-duration, 0.15s) var(--tw-ease, ease) both"
        },
        "@utility fade-in-*": {
          "--enter-opacity": "calc(--value(number) / 100)"
        },
        "@utility fade-out-*": {
          "--exit-opacity": "calc(--value(number) / 100)"
        },
        "@utility zoom-in-*": {
          "--enter-scale": "calc(--value(number) / 100)"
        },
        "@utility zoom-out-*": {
          "--exit-scale": "calc(--value(number) / 100)"
        },
        "@utility slide-in-from-top-*": {
          "--enter-translate-y": "calc(var(--spacing) * --value(number) * -1)"
        },
        "@utility slide-in-from-bottom-*": {
          "--enter-translate-y": "calc(var(--spacing) * --value(number))"
        },
        "@utility slide-in-from-left-*": {
          "--enter-translate-x": "calc(var(--spacing) * --value(number) * -1)"
        },
        "@utility slide-in-from-right-*": {
          "--enter-translate-x": "calc(var(--spacing) * --value(number))"
        },
        "@utility slide-out-to-top-*": {
          "--exit-translate-y": "calc(var(--spacing) * --value(number) * -1)"
        },
        "@utility slide-out-to-bottom-*": {
          "--exit-translate-y": "calc(var(--spacing) * --value(number))"
        },
        "@utility slide-out-to-left-*": {
          "--exit-translate-x": "calc(var(--spacing) * --value(number) * -1)"
        },
        "@utility slide-out-to-right-*": {
          "--exit-translate-x": "calc(var(--spacing) * --value(number))"
        },
        "@keyframes enter": {
          "from": {
            "opacity": "var(--enter-opacity, 1)",
            "transform": "translate3d(var(--enter-translate-x, 0), var(--enter-translate-y, 0), 0) scale3d(var(--enter-scale, 1), var(--enter-scale, 1), 1)"
          }
        },
        "@keyframes exit": {
          "to": {
            "opacity": "var(--exit-opacity, 1)",
            "transform": "translate3d(var(--exit-translate-x, 0), var(--exit-translate-y, 0), 0) scale3d(var(--exit-scale, 1), var(--exit-scale, 1), 1)"
          }
        }
      }
    },
    {
      "name": "button",
      "type": "registry:ui",
      "title": "Button",
      "description": "Displays a button built on the Base UI Button primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/button.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "badge",
      "type": "registry:ui",
      "title": "Badge",
      "description": "Displays a small status descriptor.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/badge.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "kbd",
      "type": "registry:ui",
      "title": "Kbd",
      "description": "Displays a keyboard key.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/kbd.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "label",
      "type": "registry:ui",
      "title": "Label",
      "description": "Displays a label for form inputs.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/label.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "card",
      "type": "registry:ui",
      "title": "Card",
      "description": "Displays a container with optional header, content, and footer sections.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/card.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "input",
      "type": "registry:ui",
      "title": "Input",
      "description": "Displays a text input built on the Base UI Input primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/input.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "input-otp",
      "type": "registry:ui",
      "title": "Input OTP",
      "description": "Displays an OTP input field built on the Base UI OTPField primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/input-otp.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "alert",
      "type": "registry:ui",
      "title": "Alert",
      "description": "Displays a message with optional title and description for the user.",
      "dependencies": [
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/alert.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "avatar",
      "type": "registry:ui",
      "title": "Avatar",
      "description": "An image element with a fallback for representing the user.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/avatar.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "separator",
      "type": "registry:ui",
      "title": "Separator",
      "description": "Visually or semantically separates content.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/separator.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "skeleton",
      "type": "registry:ui",
      "title": "Skeleton",
      "description": "Use to show a placeholder while content is loading.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/skeleton.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "spinner",
      "type": "registry:ui",
      "title": "Spinner",
      "description": "Displays a loading indicator.",
      "dependencies": [
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/spinner.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "aspect-ratio",
      "type": "registry:ui",
      "title": "Aspect Ratio",
      "description": "Displays content with a fixed aspect ratio.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/aspect-ratio.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "textarea",
      "type": "registry:ui",
      "title": "Textarea",
      "description": "Displays a multi-line text input field.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/textarea.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "table",
      "type": "registry:ui",
      "title": "Table",
      "description": "Displays data in rows and columns with semantic HTML and support for headers, bodies, and footers.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/table.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "breadcrumb",
      "type": "registry:ui",
      "title": "Breadcrumb",
      "description": "Displays the current location within a hierarchical navigation structure.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/breadcrumb.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "pagination",
      "type": "registry:ui",
      "title": "Pagination",
      "description": "Displays navigation for multi-page content.",
      "dependencies": [
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/pagination.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "progress",
      "type": "registry:ui",
      "title": "Progress",
      "description": "Displays an indicator showing the completion progress of a task.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/progress.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "field",
      "type": "registry:ui",
      "title": "Field",
      "description": "Associates a label, control, description, and validation error for a form field.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/label.json",
        "https://sevenui.dev/r/separator.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/field.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "form",
      "type": "registry:ui",
      "title": "Form",
      "description": "A native form with consolidated, auto-clearing validation error handling.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/form.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "checkbox",
      "type": "registry:ui",
      "title": "Checkbox",
      "description": "Displays a checkbox built on the Base UI Checkbox primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/checkbox.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "radio-group",
      "type": "registry:ui",
      "title": "Radio Group",
      "description": "Displays a radio group built on the Base UI Radio primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/radio-group.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "switch",
      "type": "registry:ui",
      "title": "Switch",
      "description": "Displays a switch built on the Base UI Switch primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/switch.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "toggle",
      "type": "registry:ui",
      "title": "Toggle",
      "description": "Displays a toggle built on the Base UI Toggle primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/toggle.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "toggle-group",
      "type": "registry:ui",
      "title": "Toggle Group",
      "description": "Displays a toggle group built on the Base UI Toggle Group primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/toggle.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/toggle-group.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "slider",
      "type": "registry:ui",
      "title": "Slider",
      "description": "Displays a slider built on the Base UI Slider primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/slider.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "number-field",
      "type": "registry:ui",
      "title": "Number Field",
      "description": "Displays a number field built on the Base UI Number Field primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/number-field.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "select",
      "type": "registry:ui",
      "title": "Select",
      "description": "Displays a select menu built on the Base UI Select primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/select.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "combobox",
      "type": "registry:ui",
      "title": "Combobox",
      "description": "An input combined with a filterable popup list, built on the Base UI Combobox primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json",
        "https://sevenui.dev/r/button.json",
        "https://sevenui.dev/r/input-group.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/combobox.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "tooltip",
      "type": "registry:ui",
      "title": "Tooltip",
      "description": "A popup that displays information related to an element when hovered or focused, built on the Base UI Tooltip primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/tooltip.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "popover",
      "type": "registry:ui",
      "title": "Popover",
      "description": "Displays rich content in a portal, positioned relative to an anchor element, built on the Base UI Popover primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/popover.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "hover-card",
      "type": "registry:ui",
      "title": "Hover Card",
      "description": "Displays a preview card when hovering or focusing a link, built on the Base UI Preview Card primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/hover-card.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "dialog",
      "type": "registry:ui",
      "title": "Dialog",
      "description": "A window overlaid on either the primary window or another dialog window, rendering the content underneath inert, built on the Base UI Dialog primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json",
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/dialog.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "alert-dialog",
      "type": "registry:ui",
      "title": "Alert Dialog",
      "description": "A modal dialog that interrupts the user with important content and expects a response, built on the Base UI Alert Dialog primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json",
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/alert-dialog.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "sheet",
      "type": "registry:ui",
      "title": "Sheet",
      "description": "An edge-positioned panel that slides in from the side of the screen, built on the Base UI Dialog primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/sheet.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "drawer",
      "type": "registry:ui",
      "title": "Drawer",
      "description": "A panel that slides in from an edge of the screen and can be dismissed with a swipe gesture, built on the Base UI Drawer primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/drawer.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "dropdown-menu",
      "type": "registry:ui",
      "title": "Dropdown Menu",
      "description": "Displays a menu to the user — such as a set of actions or functions — triggered by a button, built on the Base UI Menu primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/dropdown-menu.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "context-menu",
      "type": "registry:ui",
      "title": "Context Menu",
      "description": "Displays a menu to the user — such as a set of actions or functions — triggered by right click or touch long-press, built on the Base UI Menu primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/context-menu.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "menubar",
      "type": "registry:ui",
      "title": "Menubar",
      "description": "A horizontal menu bar with multiple menus — such as File, Edit, and View — built on the Base UI Menu primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json",
        "https://sevenui.dev/r/dropdown-menu.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/menubar.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "toast",
      "type": "registry:ui",
      "title": "Toast",
      "description": "A sonner-style, module-level toast API for showing brief, non-blocking notifications, built on the Base UI Toast primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/toast.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "tabs",
      "type": "registry:ui",
      "title": "Tabs",
      "description": "A set of layered sections of content — known as tab panels — that display one panel at a time, built on the Base UI Tabs primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/tabs.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "accordion",
      "type": "registry:ui",
      "title": "Accordion",
      "description": "A vertically stacked set of interactive headings that each reveal an associated panel of content, built on the Base UI Accordion primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/accordion.tsx",
          "type": "registry:ui"
        }
      ],
      "cssVars": {
        "theme": {
          "--animate-accordion-down": "accordion-down 0.2s ease-out",
          "--animate-accordion-up": "accordion-up 0.2s ease-out"
        }
      },
      "css": {
        "@keyframes accordion-down": {
          "from": {
            "height": "0"
          },
          "to": {
            "height": "var(--accordion-panel-height)"
          }
        },
        "@keyframes accordion-up": {
          "from": {
            "height": "var(--accordion-panel-height)"
          },
          "to": {
            "height": "0"
          }
        }
      },
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "collapsible",
      "type": "registry:ui",
      "title": "Collapsible",
      "description": "An interactive component which expands/collapses a panel, built on the Base UI Collapsible primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/collapsible.tsx",
          "type": "registry:ui"
        }
      ],
      "cssVars": {
        "theme": {
          "--animate-collapsible-down": "collapsible-down 0.2s ease-out",
          "--animate-collapsible-up": "collapsible-up 0.2s ease-out"
        }
      },
      "css": {
        "@keyframes collapsible-down": {
          "from": {
            "height": "0"
          },
          "to": {
            "height": "var(--collapsible-panel-height)"
          }
        },
        "@keyframes collapsible-up": {
          "from": {
            "height": "var(--collapsible-panel-height)"
          },
          "to": {
            "height": "0"
          }
        }
      }
    },
    {
      "name": "scroll-area",
      "type": "registry:ui",
      "title": "Scroll Area",
      "description": "Augments native scroll functionality for custom, cross-browser styling, built on the Base UI Scroll Area primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/scroll-area.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "meter",
      "type": "registry:ui",
      "title": "Meter",
      "description": "Displays a value within a known range, built on the Base UI Meter primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/meter.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "toolbar",
      "type": "registry:ui",
      "title": "Toolbar",
      "description": "A container for grouping a set of controls, such as buttons, toggle groups, or links, built on the Base UI Toolbar primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/toolbar.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "navigation-menu",
      "type": "registry:ui",
      "title": "Navigation Menu",
      "description": "A collection of links for navigating websites, sharing one animated popup between top-level menu triggers, built on the Base UI Navigation Menu primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/navigation-menu.tsx",
          "type": "registry:ui"
        }
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/animations.json"
      ]
    },
    {
      "name": "command",
      "type": "registry:ui",
      "title": "Command",
      "description": "A fast, composable command palette built on the Base UI Autocomplete primitive.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/dialog.json",
        "https://sevenui.dev/r/input-group.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/command.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "sidebar",
      "type": "registry:ui",
      "title": "Sidebar",
      "description": "A composable, themeable sidebar with collapsible, mobile, and icon-only modes.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json",
        "https://sevenui.dev/r/input.json",
        "https://sevenui.dev/r/separator.json",
        "https://sevenui.dev/r/sheet.json",
        "https://sevenui.dev/r/skeleton.json",
        "https://sevenui.dev/r/tooltip.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/sidebar.tsx",
          "type": "registry:ui"
        },
        {
          "path": "registry/base/hooks/use-mobile.ts",
          "type": "registry:hook"
        }
      ]
    },
    {
      "name": "resizable",
      "type": "registry:ui",
      "title": "Resizable",
      "description": "Accessible resizable panel groups and layouts.",
      "dependencies": [
        "cn@^0.2.5",
        "react-resizable-panels@^4.12.3"
      ],
      "files": [
        {
          "path": "registry/base/ui/resizable.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "carousel",
      "type": "registry:ui",
      "title": "Carousel",
      "description": "A carousel with motion and swipe built using Embla.",
      "dependencies": [
        "cn@^0.2.5",
        "embla-carousel-react@^8.6.0",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/carousel.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "calendar",
      "type": "registry:ui",
      "title": "Calendar",
      "description": "A date field component that lets users select dates or ranges.",
      "dependencies": [
        "cn@^0.2.5",
        "lucide-react@^1.41.0",
        "react-day-picker@^10.0.1"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/calendar.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "chart",
      "type": "registry:ui",
      "title": "Chart",
      "description": "Composable chart primitives built on Recharts.",
      "dependencies": [
        "cn@^0.2.5",
        "recharts@^3.10.1"
      ],
      "files": [
        {
          "path": "registry/base/ui/chart.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "button-group",
      "type": "registry:ui",
      "title": "Button Group",
      "description": "Groups related buttons with shared borders and separators.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/separator.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/button-group.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "input-group",
      "type": "registry:ui",
      "title": "Input Group",
      "description": "Groups an input with addons, buttons, and inline text.",
      "dependencies": [
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json",
        "https://sevenui.dev/r/input.json",
        "https://sevenui.dev/r/textarea.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/input-group.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "item",
      "type": "registry:ui",
      "title": "Item",
      "description": "A flexible list item with media, content, and actions.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/separator.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/item.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "empty",
      "type": "registry:ui",
      "title": "Empty",
      "description": "Displays an empty state with media, title, description, and actions.",
      "dependencies": [
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/empty.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "native-select",
      "type": "registry:ui",
      "title": "Native Select",
      "description": "A styled native HTML select element.",
      "dependencies": [
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/native-select.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "direction",
      "type": "registry:ui",
      "title": "Direction",
      "description": "Re-exports the Base UI DirectionProvider for RTL support.",
      "dependencies": [
        "@base-ui/react@^1.7.0"
      ],
      "files": [
        {
          "path": "registry/base/ui/direction.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "marker",
      "type": "registry:ui",
      "title": "Marker",
      "description": "An inline marker with icon and content for annotating UI.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/marker.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "message",
      "type": "registry:ui",
      "title": "Message",
      "description": "Chat message layout with avatar, content, header, and footer.",
      "dependencies": [
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/message.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "message-scroller",
      "type": "registry:ui",
      "title": "Message Scroller",
      "description": "Auto-scrolling chat viewport built on the shadcn MessageScroller primitive.",
      "dependencies": [
        "@shadcn/react@^0.3.1",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/message-scroller.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "bubble",
      "type": "registry:ui",
      "title": "Bubble",
      "description": "Chat message bubbles for conversational interfaces.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "files": [
        {
          "path": "registry/base/ui/bubble.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "attachment",
      "type": "registry:ui",
      "title": "Attachment",
      "description": "Displays file attachments with media previews and actions.",
      "dependencies": [
        "@base-ui/react@^1.7.0",
        "class-variance-authority@^0.7.1",
        "cn@^0.2.5"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/attachment.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "questionnaire",
      "type": "registry:ui",
      "title": "Questionnaire",
      "description": "Multi-step questionnaire flow built on the shadcn Questionnaire primitive.",
      "dependencies": [
        "@shadcn/react@^0.3.1",
        "cn@^0.2.5",
        "lucide-react@^1.41.0"
      ],
      "registryDependencies": [
        "https://sevenui.dev/r/button.json"
      ],
      "files": [
        {
          "path": "registry/base/ui/questionnaire.tsx",
          "type": "registry:ui"
        }
      ]
    }
  ]
}
