{
  "name": "@linktr.ee/arbor",
  "version": "14.3.1",
  "description": "Arbor design system shadcn registry",
  "protocol_version": "1.0",
  "capabilities": {
    "components": true
  },
  "items": [
    {
      "name": "icons",
      "type": "registry:ui",
      "title": "Icons",
      "description": "Full re-export of @phosphor-icons/react. Every icon is available under bare and Icon-suffixed names; all weights, sizes, and colors are supported.",
      "categories": [
        "icons"
      ]
    },
    {
      "name": "button",
      "type": "registry:ui",
      "title": "Button",
      "description": "Action button built on Radix Slot with seven variants, five sizes, two shapes, an optional loading state, and start/end icon slots.",
      "categories": [
        "button"
      ]
    },
    {
      "name": "link",
      "type": "registry:ui",
      "title": "Link",
      "description": "Inline link with three sizes, four semantic color variants, underline controls, and safe external-URL handling. Composes via asChild.",
      "categories": [
        "navigation"
      ]
    },
    {
      "name": "text",
      "type": "registry:ui",
      "title": "Text",
      "description": "Typography component spanning Arbor's full type scale. Maps each variant to semantic HTML and composes via asChild for headings, links, and labels.",
      "categories": [
        "typography"
      ]
    },
    {
      "name": "sanitize-href",
      "type": "registry:lib",
      "title": "sanitizeHref Utility",
      "description": "Strips dangerous URI protocols (javascript:, data:, vbscript:) from href values. Returns undefined for unsafe inputs.",
      "categories": [
        "utility"
      ]
    },
    {
      "name": "cn",
      "type": "registry:lib",
      "title": "cn Utility",
      "description": "Class merger extending tailwind-merge with Arbor's color, border, radius, shadow, spacing, height, and typography utilities.",
      "categories": [
        "utility"
      ]
    },
    {
      "name": "elevation",
      "type": "registry:ui",
      "title": "Elevation",
      "description": "Shadow utility for Arbor elevation levels 100–400. Defaults to asChild composition so it adds no wrapper div.",
      "categories": [
        "utility"
      ]
    },
    {
      "name": "icon-button",
      "type": "registry:ui",
      "title": "Icon Button",
      "description": "Icon-only button with six variants, five sizes, and squircle or capsule shape. Requires aria-label for screen readers.",
      "categories": [
        "button"
      ]
    },
    {
      "name": "tabs",
      "type": "registry:ui",
      "title": "Tabs",
      "description": "Tabbed navigation built on Radix UI with five variants (underline, pill, pill-subtle, segmented, segmented-pill) and three sizes.",
      "categories": [
        "navigation"
      ]
    },
    {
      "name": "header-bar",
      "type": "registry:ui",
      "title": "Header Bar",
      "description": "Page header bar with title, actions, tabs, and a responsive primary/secondary variant. Supports a declarative context API and emits a headerbar:tab-change event for cross-MFE communication.",
      "categories": [
        "layout",
        "navigation"
      ]
    },
    {
      "name": "actions",
      "type": "registry:ui",
      "title": "Actions",
      "description": "Toolbar built on Radix Toolbar for grouping action buttons. Includes ActionsButton, ActionsIconButton, and ActionsDivider with toolbar variant defaults.",
      "categories": [
        "layout"
      ]
    },
    {
      "name": "field",
      "type": "registry:ui",
      "title": "Field",
      "description": "Compound input system with floating labels, addons, actions, counters, file-input support, and three control variants (filled, outline, elevated) across two sizes.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "skeleton",
      "type": "registry:ui",
      "title": "Skeleton",
      "description": "Loading placeholder with pulse and shimmer animations. Includes Text, Avatar, Button, Input, Card, and ListItem preset compositions.",
      "categories": [
        "feedback"
      ]
    },
    {
      "name": "use-media-query",
      "type": "registry:hook",
      "title": "useMediaQuery",
      "description": "SSR-safe React hook tracking a CSS media query. Exports the BREAKPOINT_MD constant aligned with Tailwind's md: breakpoint.",
      "categories": [
        "utility"
      ]
    },
    {
      "name": "alert-dialog",
      "type": "registry:ui",
      "title": "Alert Dialog",
      "description": "Binary-confirmation modal (Cancel/Delete, Cancel/OK, Leave/Stay). Enforces two-button footer with no close button. Built on @radix-ui/react-alert-dialog.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "dialog",
      "type": "registry:ui",
      "title": "Dialog",
      "description": "Modal dialog built on Radix UI for blocking interactions. Compound API covers trigger, portal, overlay, content, header, footer, title, description, and close.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "drawer",
      "type": "registry:ui",
      "title": "Drawer",
      "description": "Bottom-sheet drawer built on Vaul. Supports four directions — floating card on bottom/top, edge-docked on left/right — and composes the Backdrop primitive for its overlay.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "adaptive-modal",
      "type": "registry:ui",
      "title": "AdaptiveModal",
      "description": "Renders a Drawer below the breakpoint and a Dialog at or above it. Only one branch mounts at a time; state stays external.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "radio-group",
      "type": "registry:ui",
      "title": "Radio Group",
      "description": "Radio selection built on Radix UI with four variants (compact, pill, squircle, card) for inline or full-width layouts.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "checkbox",
      "type": "registry:ui",
      "title": "Checkbox",
      "description": "Checkbox built on Radix UI with checked, unchecked, and indeterminate states. Theme-aware inverse fill and a press-scale animation.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "collapsible",
      "type": "registry:ui",
      "title": "Collapsible",
      "description": "Animated show/hide region built on Radix UI. Supports controlled and uncontrolled modes; honors prefers-reduced-motion.",
      "categories": [
        "layout"
      ]
    },
    {
      "name": "popover",
      "type": "registry:ui",
      "title": "Popover",
      "description": "Floating content surface built on Radix UI with default and inverse variants, configurable side and align, and portal rendering.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "rich-tooltip",
      "type": "registry:ui",
      "title": "RichTooltip",
      "description": "Click-triggered, content-rich tooltip built on Radix Popover (not Tooltip). Use for onboarding nudges and contextual education; theme-aware inverse styling.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "tooltip",
      "type": "registry:ui",
      "title": "Tooltip",
      "description": "Hover-triggered label built on Radix UI with inverse styling, configurable positioning, and prefers-reduced-motion support.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "select",
      "type": "registry:ui",
      "title": "Select",
      "description": "Dropdown select built on Radix UI with outline and filled triggers across three sizes. Integrates with Field for form usage.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "badge",
      "type": "registry:ui",
      "title": "Badge",
      "description": "Inline label for status, metadata, and classification. Composes Status, Plan, and Notification specialized badges across eight semantic variants.",
      "categories": [
        "badge"
      ]
    },
    {
      "name": "divider",
      "type": "registry:ui",
      "title": "Divider",
      "description": "Visual separator built on Radix Separator with horizontal or vertical orientation and an optional inline label (e.g. \"or\").",
      "categories": [
        "layout"
      ]
    },
    {
      "name": "backdrop",
      "type": "registry:ui",
      "title": "Backdrop",
      "description": "Translucent scrim that dims UI behind a modal, sheet, or drawer. Composes with Radix overlay primitives via asChild.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "switch",
      "type": "registry:ui",
      "title": "Switch",
      "description": "Toggle switch built on Radix UI with three sizes, an optional inline label, and animated track-and-thumb.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "dropdown-menu",
      "type": "registry:ui",
      "title": "Dropdown Menu",
      "description": "Dropdown menu built on Radix UI with checkbox items, radio groups, submenus, keyboard shortcuts, and inset alignment.",
      "categories": [
        "overlay"
      ]
    },
    {
      "name": "avatar",
      "type": "registry:ui",
      "title": "Avatar",
      "description": "User avatar with image, fallback, badge, and overflow-group composition. Five sizes and three shapes (circle, squircle, square).",
      "categories": [
        "data-display"
      ]
    },
    {
      "name": "alert",
      "type": "registry:ui",
      "title": "Alert",
      "description": "Inline status message with five statuses (info, success, warning, error, neutral), primary or secondary visual variants, and an optional dismiss action.",
      "categories": [
        "feedback"
      ]
    },
    {
      "name": "toast",
      "type": "registry:ui",
      "title": "Toast",
      "description": "Notification toast built on Sonner with default and inverse surfaces, optional icon, action button, and stacked chin decoration.",
      "categories": [
        "feedback"
      ]
    },
    {
      "name": "native-select",
      "type": "registry:ui",
      "title": "NativeSelect",
      "description": "Native HTML select styled with Arbor design tokens. Use when platform select behaviour is preferred over a custom dropdown.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "app-icon",
      "type": "registry:ui",
      "title": "AppIcon",
      "description": "Typed component for 244 third-party service logos synced from Figma. Five sizes (20, 24, 28, 40, 48px) and three variants (color, mono, outline).",
      "categories": [
        "icons"
      ]
    },
    {
      "name": "fieldset",
      "type": "registry:ui",
      "title": "Fieldset",
      "description": "Semantic grouping for form controls. Wraps radio, checkbox, and other primitives with a legend and description.",
      "categories": [
        "form"
      ]
    },
    {
      "name": "arbor-tokens",
      "type": "registry:style",
      "title": "Arbor Design Tokens",
      "description": "CSS custom properties for all Arbor design tokens including colors, spacing, shapes, typography, and theme variants. Import this CSS file at the root of your project.",
      "categories": [
        "tokens"
      ]
    },
    {
      "name": "arbor-tailwind-preset",
      "type": "registry:lib",
      "title": "Arbor Tailwind Preset",
      "description": "Complete Tailwind CSS preset with all Arbor design token mappings, custom utilities, and plugins. Add as a preset in your tailwind.config to enable all Arbor component styles.",
      "categories": [
        "tokens"
      ]
    },
    {
      "name": "setup",
      "type": "registry:style",
      "title": "Arbor Setup",
      "description": "One-command setup for the Arbor design system. Installs design tokens (CSS variables), Tailwind preset, and the cn utility. Run: npx shadcn@latest add @arbor/setup",
      "categories": [
        "setup"
      ]
    }
  ],
  "metadata": {
    "maintainer": "Linktree",
    "repository": "https://github.com/blstrco/arbor/tree/main/apps/registry",
    "documentation": "https://arbor.linktr.ee"
  }
}