{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "homepage": "https://termcn.dev",
  "items": [
    {
      "categories": ["core"],
      "description": "Shared terminal theme and provider types.",
      "files": [
        {
          "path": "registry/ui/types.ts",
          "target": "components/ui/types.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/types",
      "title": "Types",
      "type": "registry:file"
    },
    {
      "categories": ["core"],
      "description": "Accessibility contracts and summaries for Ink components.",
      "files": [
        {
          "path": "registry/lib/accessibility.ts",
          "target": "lib/accessibility.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/accessibility",
      "title": "Accessibility",
      "type": "registry:file"
    },
    {
      "categories": ["core"],
      "dependencies": ["ink"],
      "description": "Terminal-aware Ink styling helpers.",
      "files": [
        {
          "path": "registry/lib/terminal-style.ts",
          "target": "lib/terminal-style.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/terminal-style",
      "title": "Terminal Style",
      "type": "registry:file"
    },
    {
      "categories": ["core"],
      "description": "Unicode and ASCII symbols for terminal UI output.",
      "files": [
        {
          "path": "registry/lib/terminal-symbols.ts",
          "target": "lib/terminal-symbols.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/terminal-symbols",
      "title": "Terminal Symbols",
      "type": "registry:file"
    },
    {
      "categories": ["core"],
      "dependencies": ["ink"],
      "description": "Focus-gated Ink input handling and modal focus scopes.",
      "files": [
        {
          "path": "registry/hooks/use-interaction.tsx",
          "type": "registry:hook"
        }
      ],
      "name": "ink/interaction",
      "title": "Interaction",
      "type": "registry:hook"
    },
    {
      "categories": ["core"],
      "description": "Provider-optional reduced-motion context and hook.",
      "files": [
        {
          "path": "registry/hooks/use-motion.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-motion",
      "title": "Use Motion",
      "type": "registry:hook",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"]
    },
    {
      "categories": ["core"],
      "description": "Provider-optional terminal theme context and hooks.",
      "files": [
        {
          "path": "registry/hooks/use-theme.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-theme",
      "title": "Use Theme",
      "type": "registry:hook",
      "registryDependencies": [
        "https://termcn.dev/r/ink/theme-default.json",
        "https://termcn.dev/r/ink/types.json"
      ]
    },
    {
      "categories": ["core"],
      "description": "Provider-optional Unicode capability context and hook.",
      "files": [
        {
          "path": "registry/hooks/use-unicode.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-unicode",
      "title": "Use Unicode",
      "type": "registry:hook",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"]
    },
    {
      "categories": ["core"],
      "description": "Optional reduced-motion override provider.",
      "files": [
        {
          "path": "registry/providers/motion-provider.tsx",
          "target": "providers/motion-provider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/motion-provider",
      "title": "Motion Provider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-motion.json"
      ]
    },
    {
      "categories": ["core"],
      "description": "Optional Unicode capability override provider.",
      "files": [
        {
          "path": "registry/providers/unicode-provider.tsx",
          "target": "providers/unicode-provider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/unicode-provider",
      "title": "Unicode Provider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["core"],
      "dependencies": ["string-width@8.2.0"],
      "description": "Grapheme-safe terminal width, cursor, truncation, and padding helpers.",
      "files": [
        {
          "path": "registry/lib/terminal-text.ts",
          "target": "lib/terminal-text.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/terminal-text",
      "title": "Terminal Text",
      "type": "registry:file"
    },
    {
      "categories": ["feedback"],
      "dependencies": ["ink"],
      "description": "Alert box with success/error/warning/info variants",
      "files": [
        {
          "path": "registry/ui/alert.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/alert",
      "title": "Alert",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["templates"],
      "dependencies": ["ink"],
      "description": "Full-screen TUI layout with header, tip bar, full-width input, scrollable content, and hints footer",
      "files": [
        {
          "path": "registry/ui/app-shell.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/app-shell",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "App Shell",
      "type": "registry:ui"
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Constrains children to a given aspect ratio",
      "files": [
        {
          "path": "registry/ui/aspect-ratio.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/aspect-ratio",
      "title": "Aspect Ratio",
      "type": "registry:ui"
    },
    {
      "categories": ["typography"],
      "description": "Semantic status indicator badge (success/error/warning/info)",
      "files": [
        {
          "path": "registry/ui/badge.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/badge",
      "title": "Badge",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["ink"],
      "description": "Full-width announcement banner",
      "files": [
        {
          "path": "registry/ui/banner.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/banner",
      "title": "Banner",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["charts"],
      "description": "Horizontal and vertical bar chart with labels",
      "files": [
        {
          "path": "registry/ui/bar-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/bar-chart",
      "title": "Bar Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/accessibility.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["typography"],
      "description": "Figlet-style large ASCII art text",
      "files": [
        {
          "path": "registry/ui/big-text.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/big-text",
      "title": "Big Text",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Enhanced flexbox container with theme-aware borders",
      "files": [
        {
          "path": "registry/ui/box.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/box",
      "title": "Box",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["navigation"],
      "description": "Breadcrumb navigation trail",
      "files": [
        {
          "path": "registry/ui/breadcrumb.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/breadcrumb",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Breadcrumb",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["templates"],
      "description": "Nested structured content with ●/└/□ bullet prefixes",
      "files": [
        {
          "path": "registry/ui/bullet-list.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/bullet-list",
      "title": "Bullet List",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Card with header, body, and footer slots",
      "files": [
        {
          "path": "registry/ui/card.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/card",
      "title": "Card",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Centers children horizontally and vertically",
      "files": [
        {
          "path": "registry/ui/center.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/center",
      "title": "Center",
      "type": "registry:ui"
    },
    {
      "categories": ["ai"],
      "description": "Chat message bubble with role label, streaming indicator, and collapsible content",
      "files": [
        {
          "path": "registry/ui/chat-message.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/chat-message",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-animation.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Chat Message",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["ink"],
      "description": "Scrollable container for stacking ChatMessage components in a conversation thread",
      "files": [
        {
          "path": "registry/ui/chat-thread.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/chat-thread",
      "title": "Chat Thread",
      "type": "registry:ui"
    },
    {
      "categories": ["selection"],
      "description": "Checkbox with indeterminate state",
      "files": [
        {
          "path": "registry/ui/checkbox.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/checkbox",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Checkbox",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["selection"],
      "description": "Checkbox group with min/max selection",
      "files": [
        {
          "path": "registry/ui/checkbox-group.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/checkbox-group",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Checkbox Group",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Copy-to-clipboard button with success feedback",
      "files": [
        {
          "path": "registry/ui/clipboard.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/clipboard",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-clipboard.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Clipboard",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Real-time clock display with 12h/24h and date",
      "files": [
        {
          "path": "registry/ui/clock.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/clock",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Clock",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["ink"],
      "description": "Syntax-highlighted code block (50+ languages)",
      "files": [
        {
          "path": "registry/ui/code.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/code",
      "title": "Code",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["selection"],
      "description": "Color picker with palette, hex, and RGB input",
      "files": [
        {
          "path": "registry/ui/color-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/color-picker",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Color Picker",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Multi-column layout with configurable widths",
      "files": [
        {
          "path": "registry/ui/columns.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/columns",
      "title": "Columns",
      "type": "registry:ui"
    },
    {
      "categories": ["navigation"],
      "dependencies": ["ink"],
      "description": "VS Code–style command palette with fuzzy search",
      "files": [
        {
          "path": "registry/ui/command-palette.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/command-palette",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Command Palette",
      "type": "registry:ui"
    },
    {
      "categories": ["forms"],
      "description": "Yes/No confirmation prompt",
      "files": [
        {
          "path": "registry/ui/confirm.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/confirm",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Confirm",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "description": "Arrow-key scrollable stack for long assistant threads with optional hint",
      "files": [
        {
          "path": "registry/ui/conversation-history.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/conversation-history",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Conversation History",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Advanced data grid with sorting, filtering, pagination, and cell editing",
      "files": [
        {
          "path": "registry/ui/data-grid.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/data-grid",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Data Grid",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["forms"],
      "description": "Calendar date picker with keyboard navigation",
      "files": [
        {
          "path": "registry/ui/date-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/date-picker",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Date Picker",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Term–description definition list",
      "files": [
        {
          "path": "registry/ui/definition.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/definition",
      "title": "Definition",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/ink/use-theme.json"],
      "dependencies": ["ink"]
    },
    {
      "categories": ["overlays"],
      "description": "Confirmation dialog with OK/Cancel actions",
      "files": [
        {
          "path": "registry/ui/dialog.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dialog",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Dialog",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Unified, split, and inline diff viewer with LCS-based diff algorithm and line numbers",
      "files": [
        {
          "path": "registry/ui/diff-view.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/diff-view",
      "title": "Diff View",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["typography"],
      "description": "Box-drawing character numerals",
      "files": [
        {
          "path": "registry/ui/digits.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/digits",
      "title": "Digits",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Filesystem browser with expand/collapse",
      "files": [
        {
          "path": "registry/ui/directory-tree.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/directory-tree",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Directory Tree",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Dithered area charts with layered fills, dots, axes, stacking, bloom, and keyboard interaction",
      "files": [
        {
          "path": "registry/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/lib/dither-area-chart-utils.ts",
          "target": "lib/dither-area-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-area-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dither-area-chart",
      "title": "Dither Area Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Dithered grouped, stacked, and percent bar charts with terminal-native textures and interaction",
      "files": [
        {
          "path": "registry/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/lib/dither-bar-chart-utils.ts",
          "target": "lib/dither-bar-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-bar-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dither-bar-chart",
      "title": "Dither Bar Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Dithered multi-series line charts with solid or dashed strokes, markers, axes, and terminal interaction",
      "files": [
        {
          "path": "registry/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/lib/dither-line-chart-utils.ts",
          "target": "lib/dither-line-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-line-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dither-line-chart",
      "title": "Dither Line Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Dithered pie and donut charts with textured slices, legends, tooltips, and keyboard inspection",
      "files": [
        {
          "path": "registry/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/lib/dither-pie-chart-utils.ts",
          "target": "lib/dither-pie-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-pie-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dither-pie-chart",
      "title": "Dither Pie Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Dithered radar charts for comparing multiple series across terminal-friendly radial axes",
      "files": [
        {
          "path": "registry/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/lib/dither-radar-chart-utils.ts",
          "target": "lib/dither-radar-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-radar-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dither-radar-chart",
      "title": "Dither Radar Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["ink"],
      "description": "Compact dithered sparklines for terminal dashboards, summaries, and inline metrics",
      "files": [
        {
          "path": "registry/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/lib/dither-sparkline-utils.ts",
          "target": "lib/dither-sparkline-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/ui/dither-sparkline.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/dither-sparkline",
      "title": "Dither Sparkline",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["layout"],
      "description": "Horizontal or vertical divider / rule",
      "files": [
        {
          "path": "registry/ui/divider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/divider",
      "title": "Divider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["overlays"],
      "description": "Slide-in panel from any edge",
      "files": [
        {
          "path": "registry/ui/drawer.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/drawer",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Drawer",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["input"],
      "description": "Email input with validation and domain suggestions",
      "files": [
        {
          "path": "registry/ui/email-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/email-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Email Input",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["ink", "strip-ansi"],
      "description": "Embedded PTY terminal panel (requires node-pty peer)",
      "files": [
        {
          "path": "registry/ui/embedded-terminal.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/embedded-terminal",
      "title": "Embedded Terminal",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["utility"],
      "description": "React error boundary with graceful terminal display",
      "files": [
        {
          "path": "registry/ui/error-boundary.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/error-boundary",
      "title": "Error Boundary",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["ink"],
      "description": "Inline error panel with retry, dismiss, and max-retry guard",
      "files": [
        {
          "path": "registry/ui/error-retry.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/error-retry",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Error Retry",
      "type": "registry:ui"
    },
    {
      "categories": ["ai"],
      "description": "Interactive file-change review list with diff expansion, per-file accept/reject actions, and accept-all shortcut",
      "files": [
        {
          "path": "registry/ui/file-change.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/file-change",
      "registryDependencies": [
        "https://termcn.dev/r/ink/diff-view.json",
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "File Change",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["forms"],
      "description": "Interactive file browser and picker",
      "files": [
        {
          "path": "registry/ui/file-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/file-picker",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "File Picker",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["ink"],
      "description": "Form container with validation, Ctrl+S submit, and dirty tracking",
      "files": [
        {
          "path": "registry/ui/form.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/form",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json"
      ],
      "title": "Form",
      "type": "registry:ui"
    },
    {
      "categories": ["forms"],
      "description": "Form field wrapper with label, hint, and error",
      "files": [
        {
          "path": "registry/ui/form-field.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/form-field",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Form Field",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["charts"],
      "description": "Arc/speedometer gauge meter",
      "files": [
        {
          "path": "registry/ui/gauge.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/gauge",
      "title": "Gauge",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Git status display (branch, staged, modified, ahead/behind)",
      "files": [
        {
          "path": "registry/ui/git-status.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/git-status",
      "title": "Git Status",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["typography"],
      "description": "Color gradient text",
      "files": [
        {
          "path": "registry/ui/gradient.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/gradient",
      "title": "Gradient",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/ink/terminal-text.json"],
      "dependencies": ["ink"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Rows × columns grid layout",
      "files": [
        {
          "path": "registry/ui/grid.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/grid",
      "title": "Grid",
      "type": "registry:ui"
    },
    {
      "categories": ["typography"],
      "description": "h1–h4 styled headings with optional figlet ASCII art",
      "files": [
        {
          "path": "registry/ui/heading.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/heading",
      "title": "Heading",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["charts"],
      "description": "Grid heatmap with color intensity scale",
      "files": [
        {
          "path": "registry/ui/heat-map.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/heat-map",
      "title": "Heat Map",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Auto-generated help panel from a keymap",
      "files": [
        {
          "path": "registry/ui/help.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/help",
      "title": "Help",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["templates"],
      "description": "Figlet banner + tagline + aligned Options/Commands help sections",
      "files": [
        {
          "path": "registry/ui/help-screen.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/help-screen",
      "registryDependencies": [
        "https://termcn.dev/r/ink/big-text.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json"
      ],
      "title": "Help Screen",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["ink"],
      "description": "Image renderer with iTerm2/Kitty protocol and ASCII fallback",
      "files": [
        {
          "path": "registry/ui/image.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/image",
      "title": "Image",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/accessibility.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["templates"],
      "description": "Bordered info panel with header, key-value rows, and tree-prefix rows",
      "files": [
        {
          "path": "registry/ui/info-box.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/info-box",
      "title": "Info Box",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Pretty-printed JSON with collapsible nodes",
      "files": [
        {
          "path": "registry/ui/json.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/json",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json"
      ],
      "title": "JSON",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Aligned key–value pairs",
      "files": [
        {
          "path": "registry/ui/key-value.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/key-value",
      "title": "Key Value",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Formatted keyboard shortcut reference table",
      "files": [
        {
          "path": "registry/ui/keyboard-shortcuts.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/keyboard-shortcuts",
      "title": "Keyboard Shortcuts",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["charts"],
      "description": "ASCII line chart with axes and multi-series support",
      "files": [
        {
          "path": "registry/ui/line-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/line-chart",
      "title": "Line Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/accessibility.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["ink"],
      "description": "OSC 8 clickable hyperlink",
      "files": [
        {
          "path": "registry/ui/link.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/link",
      "title": "Link",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json"
      ]
    },
    {
      "categories": ["data"],
      "description": "Navigable list with optional filtering",
      "files": [
        {
          "path": "registry/ui/list.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/list",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "List",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Scrolling log viewer with severity levels and filtering",
      "files": [
        {
          "path": "registry/ui/log.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/log",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Log",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["templates"],
      "description": "Full-page onboarding/login screen with announcement banner, big ASCII title, description, and numbered select",
      "files": [
        {
          "path": "registry/ui/login-flow.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/login-flow",
      "registryDependencies": [
        "https://termcn.dev/r/ink/big-text.json",
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Login Flow",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["typography"],
      "description": "Full markdown renderer for terminal",
      "files": [
        {
          "path": "registry/ui/markdown.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/markdown",
      "title": "Markdown",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-animation.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["input"],
      "description": "Masked input for phone, date, credit card formats",
      "files": [
        {
          "path": "registry/ui/masked-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/masked-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Masked Input",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["navigation"],
      "description": "Dropdown menu with nested submenus",
      "files": [
        {
          "path": "registry/ui/menu.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/menu",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Menu",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["overlays"],
      "description": "Focus-trapped overlay modal, close with Esc",
      "files": [
        {
          "path": "registry/ui/modal.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/modal",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Modal",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "description": "Keyboard-navigable list for selecting an AI model, with optional provider grouping and context-window display",
      "files": [
        {
          "path": "registry/ui/model-selector.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/model-selector",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Model Selector",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["feedback"],
      "description": "Parallel progress display for package managers, build pipelines, and deploy tools",
      "files": [
        {
          "path": "registry/ui/multi-progress.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/multi-progress",
      "title": "Multi Progress",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["selection"],
      "description": "Multi-select list with checkboxes and select-all",
      "files": [
        {
          "path": "registry/ui/multi-select.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/multi-select",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Multi Select",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["ink"],
      "description": "Persistent queue-based notification panel with useNotifications hook",
      "files": [
        {
          "path": "registry/ui/notification-center.tsx",
          "type": "registry:ui"
        },
        {
          "path": "registry/ui/notification-badge.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/notification-center",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-notifications.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Notification Center",
      "type": "registry:block"
    },
    {
      "categories": ["input"],
      "description": "Numeric input with increment/decrement and bounds",
      "files": [
        {
          "path": "registry/ui/number-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/number-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Number Input",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["core"],
      "description": "Shared terminal theme and provider types.",
      "files": [
        {
          "path": "registry/opentui/ui/types.ts",
          "target": "components/ui/types.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/types",
      "title": "Types",
      "type": "registry:file"
    },
    {
      "categories": ["core"],
      "description": "Provider-optional reduced-motion context and hook.",
      "files": [
        {
          "path": "registry/opentui/hooks/use-motion.ts",
          "type": "registry:hook"
        }
      ],
      "name": "opentui/use-motion",
      "title": "Use Motion",
      "type": "registry:hook",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"]
    },
    {
      "categories": ["core"],
      "description": "Provider-optional terminal theme context and hooks.",
      "files": [
        {
          "path": "registry/opentui/hooks/use-theme.ts",
          "type": "registry:hook"
        }
      ],
      "name": "opentui/use-theme",
      "title": "Use Theme",
      "type": "registry:hook",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/theme-default.json",
        "https://termcn.dev/r/opentui/types.json"
      ]
    },
    {
      "categories": ["core"],
      "description": "Provider-optional Unicode capability context and hook.",
      "files": [
        {
          "path": "registry/opentui/hooks/use-unicode.ts",
          "type": "registry:hook"
        }
      ],
      "name": "opentui/use-unicode",
      "title": "Use Unicode",
      "type": "registry:hook",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"]
    },
    {
      "categories": ["core"],
      "dependencies": ["@opentui/react"],
      "description": "Optional reduced-motion override provider.",
      "files": [
        {
          "path": "registry/opentui/providers/motion-provider.tsx",
          "target": "providers/motion-provider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/motion-provider",
      "title": "Motion Provider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/types.json",
        "https://termcn.dev/r/opentui/use-motion.json"
      ]
    },
    {
      "categories": ["core"],
      "dependencies": ["@opentui/react"],
      "description": "Optional Unicode capability override provider.",
      "files": [
        {
          "path": "registry/opentui/providers/unicode-provider.tsx",
          "target": "providers/unicode-provider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/unicode-provider",
      "title": "Unicode Provider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/types.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Alert box with success/error/warning/info variants",
      "files": [
        {
          "path": "registry/opentui/ui/alert.tsx",
          "target": "components/ui/alert.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/alert",
      "title": "Alert",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Full-screen TUI layout with header, tip bar, full-width input, scrollable content, and hints footer",
      "files": [
        {
          "path": "registry/opentui/ui/app-shell.tsx",
          "target": "components/ui/app-shell.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/app-shell",
      "title": "App Shell",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Constrains children to a given aspect ratio",
      "files": [
        {
          "path": "registry/opentui/ui/aspect-ratio.tsx",
          "target": "components/ui/aspect-ratio.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/aspect-ratio",
      "title": "Aspect Ratio",
      "type": "registry:ui"
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Semantic status indicator badge (success/error/warning/info)",
      "files": [
        {
          "path": "registry/opentui/ui/badge.tsx",
          "target": "components/ui/badge.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/badge",
      "title": "Badge",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Full-width announcement banner",
      "files": [
        {
          "path": "registry/opentui/ui/banner.tsx",
          "target": "components/ui/banner.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/banner",
      "title": "Banner",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["charts"],
      "dependencies": ["@opentui/react"],
      "description": "Horizontal and vertical bar chart with labels",
      "files": [
        {
          "path": "registry/opentui/ui/bar-chart.tsx",
          "target": "components/ui/bar-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/bar-chart",
      "title": "Bar Chart",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Figlet-style large ASCII art text",
      "files": [
        {
          "path": "registry/opentui/ui/big-text.tsx",
          "target": "components/ui/big-text.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/big-text",
      "title": "Big Text",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Enhanced flexbox container with theme-aware borders",
      "files": [
        {
          "path": "registry/opentui/ui/box.tsx",
          "target": "components/ui/box.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/box",
      "title": "Box",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "Breadcrumb navigation trail",
      "files": [
        {
          "path": "registry/opentui/ui/breadcrumb.tsx",
          "target": "components/ui/breadcrumb.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/breadcrumb",
      "title": "Breadcrumb",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Nested structured content with ●/└/□ bullet prefixes",
      "files": [
        {
          "path": "registry/opentui/ui/bullet-list.tsx",
          "target": "components/ui/bullet-list.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/bullet-list",
      "title": "Bullet List",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Card with header, body, and footer slots",
      "files": [
        {
          "path": "registry/opentui/ui/card.tsx",
          "target": "components/ui/card.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/card",
      "title": "Card",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Centers children horizontally and vertically",
      "files": [
        {
          "path": "registry/opentui/ui/center.tsx",
          "target": "components/ui/center.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/center",
      "title": "Center",
      "type": "registry:ui"
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Chat message bubble with role label, streaming indicator, and collapsible content",
      "files": [
        {
          "path": "registry/opentui/ui/chat-message.tsx",
          "target": "components/ui/chat-message.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/chat-message",
      "title": "Chat Message",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Scrollable container for stacking ChatMessage components in a conversation thread",
      "files": [
        {
          "path": "registry/opentui/ui/chat-thread.tsx",
          "target": "components/ui/chat-thread.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/chat-thread",
      "title": "Chat Thread",
      "type": "registry:ui"
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Checkbox with indeterminate state",
      "files": [
        {
          "path": "registry/opentui/ui/checkbox.tsx",
          "target": "components/ui/checkbox.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/checkbox",
      "title": "Checkbox",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Checkbox group with min/max selection",
      "files": [
        {
          "path": "registry/opentui/ui/checkbox-group.tsx",
          "target": "components/ui/checkbox-group.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/checkbox-group",
      "title": "Checkbox Group",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Copy-to-clipboard button with success feedback",
      "files": [
        {
          "path": "registry/opentui/ui/clipboard.tsx",
          "target": "components/ui/clipboard.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/clipboard",
      "title": "Clipboard",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/ink/use-clipboard.json"
      ]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Real-time clock display with 12h/24h and date",
      "files": [
        {
          "path": "registry/opentui/ui/clock.tsx",
          "target": "components/ui/clock.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/clock",
      "title": "Clock",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Syntax-highlighted code block (50+ languages)",
      "files": [
        {
          "path": "registry/opentui/ui/code.tsx",
          "target": "components/ui/code.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/code",
      "title": "Code",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Color picker with palette, hex, and RGB input",
      "files": [
        {
          "path": "registry/opentui/ui/color-picker.tsx",
          "target": "components/ui/color-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/color-picker",
      "title": "Color Picker",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Multi-column layout with configurable widths",
      "files": [
        {
          "path": "registry/opentui/ui/columns.tsx",
          "target": "components/ui/columns.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/columns",
      "title": "Columns",
      "type": "registry:ui"
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "VS Code–style command palette with fuzzy search",
      "files": [
        {
          "path": "registry/opentui/ui/command-palette.tsx",
          "target": "components/ui/command-palette.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/command-palette",
      "title": "Command Palette",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Yes/No confirmation prompt",
      "files": [
        {
          "path": "registry/opentui/ui/confirm.tsx",
          "target": "components/ui/confirm.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/confirm",
      "title": "Confirm",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Advanced data grid with sorting, filtering, pagination, and cell editing",
      "files": [
        {
          "path": "registry/opentui/ui/data-grid.tsx",
          "target": "components/ui/data-grid.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/data-grid",
      "title": "Data Grid",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Calendar date picker with keyboard navigation",
      "files": [
        {
          "path": "registry/opentui/ui/date-picker.tsx",
          "target": "components/ui/date-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/date-picker",
      "title": "Date Picker",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Term–description definition list",
      "files": [
        {
          "path": "registry/opentui/ui/definition.tsx",
          "target": "components/ui/definition.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/definition",
      "title": "Definition",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["@opentui/react"],
      "description": "Confirmation dialog with OK/Cancel actions",
      "files": [
        {
          "path": "registry/opentui/ui/dialog.tsx",
          "target": "components/ui/dialog.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dialog",
      "title": "Dialog",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Unified, split, and inline diff viewer with LCS-based diff algorithm and line numbers",
      "files": [
        {
          "path": "registry/opentui/ui/diff-view.tsx",
          "target": "components/ui/diff-view.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/diff-view",
      "title": "Diff View",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Box-drawing character numerals",
      "files": [
        {
          "path": "registry/opentui/ui/digits.tsx",
          "target": "components/ui/digits.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/digits",
      "title": "Digits",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Filesystem browser with expand/collapse",
      "files": [
        {
          "path": "registry/opentui/ui/directory-tree.tsx",
          "target": "components/ui/directory-tree.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/directory-tree",
      "title": "Directory Tree",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Dithered area charts with layered fills, dots, axes, stacking, bloom, and keyboard interaction",
      "files": [
        {
          "path": "registry/opentui/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/lib/dither-area-chart-utils.ts",
          "target": "lib/dither-area-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-area-chart.tsx",
          "target": "components/ui/dither-area-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dither-area-chart",
      "title": "Dither Area Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-motion.json",
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Dithered grouped, stacked, and percent bar charts with terminal-native textures and interaction",
      "files": [
        {
          "path": "registry/opentui/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/lib/dither-bar-chart-utils.ts",
          "target": "lib/dither-bar-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-bar-chart.tsx",
          "target": "components/ui/dither-bar-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dither-bar-chart",
      "title": "Dither Bar Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-motion.json",
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Dithered multi-series line charts with solid or dashed strokes, markers, axes, and terminal interaction",
      "files": [
        {
          "path": "registry/opentui/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/lib/dither-line-chart-utils.ts",
          "target": "lib/dither-line-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-line-chart.tsx",
          "target": "components/ui/dither-line-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dither-line-chart",
      "title": "Dither Line Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-motion.json",
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Dithered pie and donut charts with textured slices, legends, tooltips, and keyboard inspection",
      "files": [
        {
          "path": "registry/opentui/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/lib/dither-pie-chart-utils.ts",
          "target": "lib/dither-pie-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-pie-chart.tsx",
          "target": "components/ui/dither-pie-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dither-pie-chart",
      "title": "Dither Pie Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-motion.json",
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Dithered radar charts for comparing multiple series across terminal-friendly radial axes",
      "files": [
        {
          "path": "registry/opentui/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/lib/dither-radar-chart-utils.ts",
          "target": "lib/dither-radar-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-radar-chart.tsx",
          "target": "components/ui/dither-radar-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dither-radar-chart",
      "title": "Dither Radar Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-motion.json",
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Compact dithered sparklines for terminal dashboards, summaries, and inline metrics",
      "files": [
        {
          "path": "registry/opentui/lib/dither-chart-utils.ts",
          "target": "lib/dither-chart-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/lib/dither-sparkline-utils.ts",
          "target": "lib/dither-sparkline-utils.ts",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-chart.tsx",
          "target": "components/ui/dither-chart.tsx",
          "type": "registry:file"
        },
        {
          "path": "registry/opentui/ui/dither-sparkline.tsx",
          "target": "components/ui/dither-sparkline.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/dither-sparkline",
      "title": "Dither Sparkline",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-motion.json",
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/opentui/use-unicode.json"
      ]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Horizontal or vertical divider / rule",
      "files": [
        {
          "path": "registry/opentui/ui/divider.tsx",
          "target": "components/ui/divider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/divider",
      "title": "Divider",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["@opentui/react"],
      "description": "Slide-in panel from any edge",
      "files": [
        {
          "path": "registry/opentui/ui/drawer.tsx",
          "target": "components/ui/drawer.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/drawer",
      "title": "Drawer",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Email input with validation and domain suggestions",
      "files": [
        {
          "path": "registry/opentui/ui/email-input.tsx",
          "target": "components/ui/email-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/email-input",
      "title": "Email Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react", "strip-ansi"],
      "description": "Embedded PTY terminal panel (requires node-pty peer)",
      "files": [
        {
          "path": "registry/opentui/ui/embedded-terminal.tsx",
          "target": "components/ui/embedded-terminal.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/embedded-terminal",
      "title": "Embedded Terminal",
      "type": "registry:ui"
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "React error boundary with graceful terminal display",
      "files": [
        {
          "path": "registry/opentui/ui/error-boundary.tsx",
          "target": "components/ui/error-boundary.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/error-boundary",
      "title": "Error Boundary",
      "type": "registry:ui"
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Interactive file-change review list with diff expansion, per-file accept/reject actions, and accept-all shortcut",
      "files": [
        {
          "path": "registry/opentui/ui/file-change.tsx",
          "target": "components/ui/file-change.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/file-change",
      "title": "File Change",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Interactive file browser and picker",
      "files": [
        {
          "path": "registry/opentui/ui/file-picker.tsx",
          "target": "components/ui/file-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/file-picker",
      "title": "File Picker",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Form container with validation, Ctrl+S submit, and dirty tracking",
      "files": [
        {
          "path": "registry/opentui/ui/form.tsx",
          "target": "components/ui/form.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/form",
      "title": "Form",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Form field wrapper with label, hint, and error",
      "files": [
        {
          "path": "registry/opentui/ui/form-field.tsx",
          "target": "components/ui/form-field.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/form-field",
      "title": "Form Field",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["charts"],
      "dependencies": ["@opentui/react"],
      "description": "Arc/speedometer gauge meter",
      "files": [
        {
          "path": "registry/opentui/ui/gauge.tsx",
          "target": "components/ui/gauge.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/gauge",
      "title": "Gauge",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Git status display (branch, staged, modified, ahead/behind)",
      "files": [
        {
          "path": "registry/opentui/ui/git-status.tsx",
          "target": "components/ui/git-status.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/git-status",
      "title": "Git Status",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Color gradient text",
      "files": [
        {
          "path": "registry/opentui/ui/gradient.tsx",
          "target": "components/ui/gradient.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/gradient",
      "title": "Gradient",
      "type": "registry:ui"
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Rows × columns grid layout",
      "files": [
        {
          "path": "registry/opentui/ui/grid.tsx",
          "target": "components/ui/grid.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/grid",
      "title": "Grid",
      "type": "registry:ui"
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "h1–h4 styled headings with optional figlet ASCII art",
      "files": [
        {
          "path": "registry/opentui/ui/heading.tsx",
          "target": "components/ui/heading.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/heading",
      "title": "Heading",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["charts"],
      "dependencies": ["@opentui/react"],
      "description": "Grid heatmap with color intensity scale",
      "files": [
        {
          "path": "registry/opentui/ui/heat-map.tsx",
          "target": "components/ui/heat-map.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/heat-map",
      "title": "Heat Map",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Auto-generated help panel from a keymap",
      "files": [
        {
          "path": "registry/opentui/ui/help.tsx",
          "target": "components/ui/help.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/help",
      "title": "Help",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Figlet banner + tagline + aligned Options/Commands help sections",
      "files": [
        {
          "path": "registry/opentui/ui/help-screen.tsx",
          "target": "components/ui/help-screen.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/help-screen",
      "title": "Help Screen",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Image renderer with iTerm2/Kitty protocol and ASCII fallback",
      "files": [
        {
          "path": "registry/opentui/ui/image.tsx",
          "target": "components/ui/image.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/image",
      "title": "Image",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Bordered info panel with header, key-value rows, and tree-prefix rows",
      "files": [
        {
          "path": "registry/opentui/ui/info-box.tsx",
          "target": "components/ui/info-box.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/info-box",
      "title": "Info Box",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Pretty-printed JSON with collapsible nodes",
      "files": [
        {
          "path": "registry/opentui/ui/json.tsx",
          "target": "components/ui/json.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/json",
      "title": "JSON",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Aligned key–value pairs",
      "files": [
        {
          "path": "registry/opentui/ui/key-value.tsx",
          "target": "components/ui/key-value.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/key-value",
      "title": "Key Value",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Formatted keyboard shortcut reference table",
      "files": [
        {
          "path": "registry/opentui/ui/keyboard-shortcuts.tsx",
          "target": "components/ui/keyboard-shortcuts.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/keyboard-shortcuts",
      "title": "Keyboard Shortcuts",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["charts"],
      "dependencies": ["@opentui/react"],
      "description": "ASCII line chart with axes and multi-series support",
      "files": [
        {
          "path": "registry/opentui/ui/line-chart.tsx",
          "target": "components/ui/line-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/line-chart",
      "title": "Line Chart",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "OSC 8 clickable hyperlink",
      "files": [
        {
          "path": "registry/opentui/ui/link.tsx",
          "target": "components/ui/link.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/link",
      "title": "Link",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Navigable list with optional filtering",
      "files": [
        {
          "path": "registry/opentui/ui/list.tsx",
          "target": "components/ui/list.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/list",
      "title": "List",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Scrolling log viewer with severity levels and filtering",
      "files": [
        {
          "path": "registry/opentui/ui/log.tsx",
          "target": "components/ui/log.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/log",
      "title": "Log",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Full-page onboarding/login screen with announcement banner, big ASCII title, description, and numbered select",
      "files": [
        {
          "path": "registry/opentui/ui/login-flow.tsx",
          "target": "components/ui/login-flow.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/login-flow",
      "title": "Login Flow",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Full markdown renderer for terminal",
      "files": [
        {
          "path": "registry/opentui/ui/markdown.tsx",
          "target": "components/ui/markdown.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/markdown",
      "title": "Markdown",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Masked input for phone, date, credit card formats",
      "files": [
        {
          "path": "registry/opentui/ui/masked-input.tsx",
          "target": "components/ui/masked-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/masked-input",
      "title": "Masked Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "Dropdown menu with nested submenus",
      "files": [
        {
          "path": "registry/opentui/ui/menu.tsx",
          "target": "components/ui/menu.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/menu",
      "title": "Menu",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["@opentui/react"],
      "description": "Focus-trapped overlay modal, close with Esc",
      "files": [
        {
          "path": "registry/opentui/ui/modal.tsx",
          "target": "components/ui/modal.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/modal",
      "title": "Modal",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Keyboard-navigable list for selecting an AI model, with optional provider grouping and context-window display",
      "files": [
        {
          "path": "registry/opentui/ui/model-selector.tsx",
          "target": "components/ui/model-selector.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/model-selector",
      "title": "Model Selector",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Parallel progress display for package managers, build pipelines, and deploy tools",
      "files": [
        {
          "path": "registry/opentui/ui/multi-progress.tsx",
          "target": "components/ui/multi-progress.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/multi-progress",
      "title": "Multi Progress",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Multi-select list with checkboxes and select-all",
      "files": [
        {
          "path": "registry/opentui/ui/multi-select.tsx",
          "target": "components/ui/multi-select.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/multi-select",
      "title": "Multi Select",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Notification Badge component for OpenTUI React.",
      "files": [
        {
          "path": "registry/opentui/ui/notification-badge.tsx",
          "target": "components/ui/notification-badge.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/notification-badge",
      "title": "Notification Badge",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["@opentui/react"],
      "description": "Persistent queue-based notification panel with useNotifications hook",
      "files": [
        {
          "path": "registry/opentui/ui/notification-center.tsx",
          "target": "components/ui/notification-center.tsx",
          "type": "registry:block"
        }
      ],
      "name": "opentui/notification-center",
      "title": "Notification Center",
      "type": "registry:block",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/ink/use-notifications.json"
      ]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Numeric input with increment/decrement and bounds",
      "files": [
        {
          "path": "registry/opentui/ui/number-input.tsx",
          "target": "components/ui/number-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/number-input",
      "title": "Number Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "Page navigation with prev/next and jump",
      "files": [
        {
          "path": "registry/opentui/ui/pagination.tsx",
          "target": "components/ui/pagination.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/pagination",
      "title": "Pagination",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Titled bordered panel",
      "files": [
        {
          "path": "registry/opentui/ui/panel.tsx",
          "target": "components/ui/panel.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/panel",
      "title": "Panel",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Password input with masked characters and reveal toggle",
      "files": [
        {
          "path": "registry/opentui/ui/password-input.tsx",
          "target": "components/ui/password-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/password-input",
      "title": "Password Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Filesystem path input with tab autocomplete",
      "files": [
        {
          "path": "registry/opentui/ui/path-input.tsx",
          "target": "components/ui/path-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/path-input",
      "title": "Path Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["charts"],
      "dependencies": ["@opentui/react"],
      "description": "Unicode block pie chart with legend",
      "files": [
        {
          "path": "registry/opentui/ui/pie-chart.tsx",
          "target": "components/ui/pie-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/pie-chart",
      "title": "Pie Chart",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["@opentui/react"],
      "description": "Positioned popover with arbitrary content",
      "files": [
        {
          "path": "registry/opentui/ui/popover.tsx",
          "target": "components/ui/popover.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/popover",
      "title": "Popover",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Determinate progress bar with percent and value/total display",
      "files": [
        {
          "path": "registry/opentui/ui/progress-bar.tsx",
          "target": "components/ui/progress-bar.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/progress-bar",
      "title": "Progress Bar",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Circular progress indicator using Unicode braille",
      "files": [
        {
          "path": "registry/opentui/ui/progress-circle.tsx",
          "target": "components/ui/progress-circle.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/progress-circle",
      "title": "Progress Circle",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Unicode block QR code generator",
      "files": [
        {
          "path": "registry/opentui/ui/qr-code.tsx",
          "target": "components/ui/qr-code.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/qr-code",
      "title": "QR Code",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Mutually exclusive radio button group",
      "files": [
        {
          "path": "registry/opentui/ui/radio-group.tsx",
          "target": "components/ui/radio-group.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/radio-group",
      "title": "Radio Group",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Scrollable container with scrollbar",
      "files": [
        {
          "path": "registry/opentui/ui/scroll-view.tsx",
          "target": "components/ui/scroll-view.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/scroll-view",
      "title": "Scroll View",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Fuzzy search input with autocomplete",
      "files": [
        {
          "path": "registry/opentui/ui/search-input.tsx",
          "target": "components/ui/search-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/search-input",
      "title": "Search Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Single-select dropdown with arrow-key navigation",
      "files": [
        {
          "path": "registry/opentui/ui/select.tsx",
          "target": "components/ui/select.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/select",
      "title": "Select",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "@clack-style step flow with ◇/◆/│ visual language, badge, info steps, and multi-select",
      "files": [
        {
          "path": "registry/opentui/ui/setup-flow.tsx",
          "target": "components/ui/setup-flow.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/setup-flow",
      "title": "Setup Flow",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "Collapsible navigation sidebar panel",
      "files": [
        {
          "path": "registry/opentui/ui/sidebar.tsx",
          "target": "components/ui/sidebar.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/sidebar",
      "title": "Sidebar",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Shimmer loading placeholder",
      "files": [
        {
          "path": "registry/opentui/ui/skeleton.tsx",
          "target": "components/ui/skeleton.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/skeleton",
      "title": "Skeleton",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Flexible space between flex children",
      "files": [
        {
          "path": "registry/opentui/ui/spacer.tsx",
          "target": "components/ui/spacer.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/spacer",
      "title": "Spacer",
      "type": "registry:ui"
    },
    {
      "categories": ["charts"],
      "dependencies": ["@opentui/react"],
      "description": "Inline Unicode braille sparkline chart",
      "files": [
        {
          "path": "registry/opentui/ui/sparkline.tsx",
          "target": "components/ui/sparkline.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/sparkline",
      "title": "Sparkline",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react", "cli-spinners"],
      "description": "Animated spinner with 12+ styles",
      "files": [
        {
          "path": "registry/opentui/ui/spinner.tsx",
          "target": "components/ui/spinner.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/spinner",
      "title": "Spinner",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/use-theme.json",
        "https://termcn.dev/r/ink/use-animation.json"
      ]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Styled startup banner with big ASCII art title, subtitle, author credit, and status line",
      "files": [
        {
          "path": "registry/opentui/ui/splash-screen.tsx",
          "target": "components/ui/splash-screen.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/splash-screen",
      "title": "Splash Screen",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["@opentui/react"],
      "description": "Vertical/horizontal stack with gap",
      "files": [
        {
          "path": "registry/opentui/ui/stack.tsx",
          "target": "components/ui/stack.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/stack",
      "title": "Stack",
      "type": "registry:ui"
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Inline status message with icon and color",
      "files": [
        {
          "path": "registry/opentui/ui/status-message.tsx",
          "target": "components/ui/status-message.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/status-message",
      "title": "Status Message",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Count-up stopwatch with laps and reset",
      "files": [
        {
          "path": "registry/opentui/ui/stopwatch.tsx",
          "target": "components/ui/stopwatch.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/stopwatch",
      "title": "Stopwatch",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Token-by-token streaming text with blinking cursor and optional typing animation",
      "files": [
        {
          "path": "registry/opentui/ui/streaming-text.tsx",
          "target": "components/ui/streaming-text.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/streaming-text",
      "title": "Streaming Text",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "Tab bar wired to content panels",
      "files": [
        {
          "path": "registry/opentui/ui/tabbed-content.tsx",
          "target": "components/ui/tabbed-content.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tabbed-content",
      "title": "Tabbed Content",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Sortable, selectable, paginated data table",
      "files": [
        {
          "path": "registry/opentui/ui/table.tsx",
          "target": "components/ui/table.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/table",
      "title": "Table",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["@opentui/react"],
      "description": "Tab bar with left/right arrow and tab-key navigation",
      "files": [
        {
          "path": "registry/opentui/ui/tabs.tsx",
          "target": "components/ui/tabs.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tabs",
      "title": "Tabs",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["typography"],
      "dependencies": ["@opentui/react"],
      "description": "Removable chip/tag",
      "files": [
        {
          "path": "registry/opentui/ui/tag.tsx",
          "target": "components/ui/tag.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tag",
      "title": "Tag",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Add and remove tags inline",
      "files": [
        {
          "path": "registry/opentui/ui/tag-input.tsx",
          "target": "components/ui/tag-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tag-input",
      "title": "Tag Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Multi-line text editor with word wrap",
      "files": [
        {
          "path": "registry/opentui/ui/text-area.tsx",
          "target": "components/ui/text-area.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/text-area",
      "title": "Text Area",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["input"],
      "dependencies": ["@opentui/react"],
      "description": "Single-line text input with placeholder, validation, mask",
      "files": [
        {
          "path": "registry/opentui/ui/text-input.tsx",
          "target": "components/ui/text-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/text-input",
      "title": "Text Input",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["core"],
      "dependencies": ["@opentui/react"],
      "description": "Terminal theme provider, design tokens, and theme helpers.",
      "files": [
        {
          "path": "registry/opentui/providers/theme-provider.tsx",
          "target": "providers/theme-provider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/theme-provider",
      "title": "Theme Provider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/opentui/types.json",
        "https://termcn.dev/r/opentui/theme-default.json",
        "https://termcn.dev/r/opentui/use-theme.json"
      ]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Collapsible block for displaying extended thinking / reasoning content from an AI model",
      "files": [
        {
          "path": "registry/opentui/ui/thinking-block.tsx",
          "target": "components/ui/thinking-block.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/thinking-block",
      "title": "Thinking Block",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Time picker with hour/minute/second spinners",
      "files": [
        {
          "path": "registry/opentui/ui/time-picker.tsx",
          "target": "components/ui/time-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/time-picker",
      "title": "Time Picker",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Countdown timer with pause/resume and auto-start",
      "files": [
        {
          "path": "registry/opentui/ui/timer.tsx",
          "target": "components/ui/timer.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/timer",
      "title": "Timer",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["@opentui/react"],
      "description": "Auto-dismissing toast notification",
      "files": [
        {
          "path": "registry/opentui/ui/toast.tsx",
          "target": "components/ui/toast.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/toast",
      "title": "Toast",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["@opentui/react"],
      "description": "Toggle/switch component with on/off labels",
      "files": [
        {
          "path": "registry/opentui/ui/toggle.tsx",
          "target": "components/ui/toggle.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/toggle",
      "title": "Toggle",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Compact token counter showing prompt and completion usage with optional cost estimate; also exports ContextMeter for visualising context window fill",
      "files": [
        {
          "path": "registry/opentui/ui/token-usage.tsx",
          "target": "components/ui/token-usage.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/token-usage",
      "title": "Token Usage",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Interactive approval prompt for AI tool calls with risk-level badge, args display, and auto-deny timeout",
      "files": [
        {
          "path": "registry/opentui/ui/tool-approval.tsx",
          "target": "components/ui/tool-approval.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tool-approval",
      "title": "Tool Approval",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["@opentui/react"],
      "description": "Displays an AI tool invocation with status indicator, args, result, and elapsed time",
      "files": [
        {
          "path": "registry/opentui/ui/tool-call.tsx",
          "target": "components/ui/tool-call.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tool-call",
      "title": "Tool Call",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["@opentui/react"],
      "description": "Contextual tooltip on focus or hover",
      "files": [
        {
          "path": "registry/opentui/ui/tooltip.tsx",
          "target": "components/ui/tooltip.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tooltip",
      "title": "Tooltip",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Expandable/collapsible tree view",
      "files": [
        {
          "path": "registry/opentui/ui/tree.tsx",
          "target": "components/ui/tree.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tree",
      "title": "Tree",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["selection"],
      "dependencies": ["@opentui/react"],
      "description": "Hierarchical tree selection",
      "files": [
        {
          "path": "registry/opentui/ui/tree-select.tsx",
          "target": "components/ui/tree-select.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/tree-select",
      "title": "Tree Select",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Real-time dashboard with diamond header, progress metrics, burn rate, predictions, and status bar",
      "files": [
        {
          "path": "registry/opentui/ui/usage-monitor.tsx",
          "target": "components/ui/usage-monitor.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/usage-monitor",
      "title": "Usage Monitor",
      "type": "registry:ui"
    },
    {
      "categories": ["data"],
      "dependencies": ["@opentui/react"],
      "description": "Virtualized list for 10k+ items",
      "files": [
        {
          "path": "registry/opentui/ui/virtual-list.tsx",
          "target": "components/ui/virtual-list.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/virtual-list",
      "title": "Virtual List",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["templates"],
      "dependencies": ["@opentui/react"],
      "description": "Two-panel welcome dashboard with titled border, logo, greeting, and sections",
      "files": [
        {
          "path": "registry/opentui/ui/welcome-screen.tsx",
          "target": "components/ui/welcome-screen.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/welcome-screen",
      "title": "Welcome Screen",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["forms"],
      "dependencies": ["@opentui/react"],
      "description": "Multi-step wizard with per-step validation",
      "files": [
        {
          "path": "registry/opentui/ui/wizard.tsx",
          "target": "components/ui/wizard.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "opentui/wizard",
      "title": "Wizard",
      "type": "registry:ui",
      "registryDependencies": ["https://termcn.dev/r/opentui/use-theme.json"]
    },
    {
      "categories": ["navigation"],
      "description": "Page navigation with prev/next and jump",
      "files": [
        {
          "path": "registry/ui/pagination.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/pagination",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Pagination",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "dependencies": ["ink"],
      "description": "Titled bordered panel",
      "files": [
        {
          "path": "registry/ui/panel.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/panel",
      "title": "Panel",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["input"],
      "dependencies": ["ink"],
      "description": "Password input with masked characters and reveal toggle",
      "files": [
        {
          "path": "registry/ui/password-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/password-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Password Input",
      "type": "registry:ui"
    },
    {
      "categories": ["input"],
      "description": "Filesystem path input with tab autocomplete",
      "files": [
        {
          "path": "registry/ui/path-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/path-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Path Input",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["charts"],
      "description": "Unicode block pie chart with legend",
      "files": [
        {
          "path": "registry/ui/pie-chart.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/pie-chart",
      "title": "Pie Chart",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["overlays"],
      "description": "Positioned popover with arbitrary content",
      "files": [
        {
          "path": "registry/ui/popover.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/popover",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Popover",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["feedback"],
      "description": "Determinate progress bar with percent and value/total display",
      "files": [
        {
          "path": "registry/ui/progress-bar.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/progress-bar",
      "title": "Progress Bar",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["feedback"],
      "description": "Circular progress indicator using Unicode braille",
      "files": [
        {
          "path": "registry/ui/progress-circle.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/progress-circle",
      "title": "Progress Circle",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Unicode block QR code generator",
      "files": [
        {
          "path": "registry/ui/qr-code.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/qr-code",
      "title": "QR Code",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/accessibility.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["selection"],
      "description": "Mutually exclusive radio button group",
      "files": [
        {
          "path": "registry/ui/radio-group.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/radio-group",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Radio Group",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["layout"],
      "description": "Scrollable container with scrollbar",
      "files": [
        {
          "path": "registry/ui/scroll-view.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/scroll-view",
      "title": "Scroll View",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["input"],
      "description": "Fuzzy search input with autocomplete",
      "files": [
        {
          "path": "registry/ui/search-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/search-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Search Input",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["selection"],
      "description": "Single-select dropdown with arrow-key navigation",
      "files": [
        {
          "path": "registry/ui/select.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/select",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Select",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["templates"],
      "description": "@clack-style step flow with ◇/◆/│ visual language, badge, info steps, and multi-select",
      "files": [
        {
          "path": "registry/ui/setup-flow.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/setup-flow",
      "registryDependencies": [
        "https://termcn.dev/r/ink/big-text.json",
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-animation.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Setup Flow",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["navigation"],
      "dependencies": ["ink"],
      "description": "Collapsible navigation sidebar panel",
      "files": [
        {
          "path": "registry/ui/sidebar.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/sidebar",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Sidebar",
      "type": "registry:ui"
    },
    {
      "categories": ["feedback"],
      "description": "Shimmer loading placeholder",
      "files": [
        {
          "path": "registry/ui/skeleton.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/skeleton",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-animation.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Skeleton",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Flexible space between flex children",
      "files": [
        {
          "path": "registry/ui/spacer.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/spacer",
      "title": "Spacer",
      "type": "registry:ui"
    },
    {
      "categories": ["charts"],
      "description": "Inline Unicode braille sparkline chart",
      "files": [
        {
          "path": "registry/ui/sparkline.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/sparkline",
      "title": "Sparkline",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/accessibility.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["cli-spinners", "ink"],
      "description": "Animated spinner with 12+ styles",
      "files": [
        {
          "path": "registry/ui/spinner.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/spinner",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-animation.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Spinner",
      "type": "registry:ui"
    },
    {
      "categories": ["templates"],
      "description": "Styled startup banner with big ASCII art title, subtitle, author credit, and status line",
      "files": [
        {
          "path": "registry/ui/splash-screen.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/splash-screen",
      "registryDependencies": [
        "https://termcn.dev/r/ink/big-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Splash Screen",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["layout"],
      "dependencies": ["ink"],
      "description": "Vertical/horizontal stack with gap",
      "files": [
        {
          "path": "registry/ui/stack.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/stack",
      "title": "Stack",
      "type": "registry:ui"
    },
    {
      "categories": ["feedback"],
      "description": "Inline status message with icon and color",
      "files": [
        {
          "path": "registry/ui/status-message.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/status-message",
      "title": "Status Message",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/spinner.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Count-up stopwatch with laps and reset",
      "files": [
        {
          "path": "registry/ui/stopwatch.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/stopwatch",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Stopwatch",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["ink"],
      "description": "Token-by-token streaming text with blinking cursor and optional typing animation",
      "files": [
        {
          "path": "registry/ui/streaming-text.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/streaming-text",
      "title": "Streaming Text",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-motion.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["navigation"],
      "description": "Tab bar wired to content panels",
      "files": [
        {
          "path": "registry/ui/tabbed-content.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tabbed-content",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tabbed Content",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["data"],
      "description": "Sortable, selectable, paginated data table",
      "files": [
        {
          "path": "registry/ui/table.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/table",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Table",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["navigation"],
      "description": "Tab bar with left/right arrow and tab-key navigation",
      "files": [
        {
          "path": "registry/ui/tabs.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tabs",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tabs",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["typography"],
      "description": "Removable chip/tag",
      "files": [
        {
          "path": "registry/ui/tag.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tag",
      "title": "Tag",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["selection"],
      "description": "Add and remove tags inline",
      "files": [
        {
          "path": "registry/ui/tag-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tag-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tag Input",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["input"],
      "dependencies": ["ink"],
      "description": "Multi-line text editor with word wrap",
      "files": [
        {
          "path": "registry/ui/text-area.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/text-area",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Text Area",
      "type": "registry:ui"
    },
    {
      "categories": ["input"],
      "dependencies": ["ink"],
      "description": "Single-line text input with placeholder, validation, mask",
      "files": [
        {
          "path": "registry/ui/text-input.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/text-input",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/terminal-text.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Text Input",
      "type": "registry:ui"
    },
    {
      "categories": ["themes"],
      "description": "A Catppuccin theme for rich terminal UI previews.",
      "files": [
        {
          "path": "registry/themes/catppuccin.ts",
          "target": "lib/terminal-themes/catppuccin.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-catppuccin",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Catppuccin",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "The default termcn terminal theme.",
      "files": [
        {
          "path": "registry/themes/default.ts",
          "target": "lib/terminal-themes/default.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-default",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Default",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A purple-heavy Dracula theme for terminal UI components.",
      "files": [
        {
          "path": "registry/themes/dracula.ts",
          "target": "lib/terminal-themes/dracula.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-dracula",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Dracula",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "High contrast themes for dark and light terminal backgrounds.",
      "files": [
        {
          "path": "registry/themes/high-contrast.ts",
          "target": "lib/terminal-themes/high-contrast.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-high-contrast",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "High Contrast",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A classic Monokai-inspired theme for terminal apps.",
      "files": [
        {
          "path": "registry/themes/monokai.ts",
          "target": "lib/terminal-themes/monokai.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-monokai",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Monokai",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A cool Nord palette tuned for terminal contrast.",
      "files": [
        {
          "path": "registry/themes/nord.ts",
          "target": "lib/terminal-themes/nord.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-nord",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Nord",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A One Dark theme for terminal components.",
      "files": [
        {
          "path": "registry/themes/one-dark.ts",
          "target": "lib/terminal-themes/one-dark.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-one-dark",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "One Dark",
      "type": "registry:file"
    },
    {
      "categories": ["core"],
      "description": "Terminal theme provider, design tokens, and theme helpers.",
      "files": [
        {
          "path": "registry/providers/theme-provider.tsx",
          "target": "providers/theme-provider.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/theme-provider",
      "title": "Theme Provider",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/theme-default.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json"
      ]
    },
    {
      "categories": ["themes"],
      "description": "A Solarized theme for terminal components.",
      "files": [
        {
          "path": "registry/themes/solarized.ts",
          "target": "lib/terminal-themes/solarized.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-solarized",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Solarized",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Tokyo Night colors for terminal interfaces.",
      "files": [
        {
          "path": "registry/themes/tokyo-night.ts",
          "target": "lib/terminal-themes/tokyo-night.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-tokyo-night",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Tokyo Night",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "AMOLED - high contrast dark theme with pure black.",
      "files": [
        {
          "path": "registry/themes/amoled.ts",
          "target": "lib/terminal-themes/amoled.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-amoled",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "AMOLED",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Aura - soft elegant theme with pastel purple.",
      "files": [
        {
          "path": "registry/themes/aura.ts",
          "target": "lib/terminal-themes/aura.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-aura",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Aura",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Ayu - clean modern terminal theme.",
      "files": [
        {
          "path": "registry/themes/ayu.ts",
          "target": "lib/terminal-themes/ayu.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-ayu",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Ayu",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Carbonfox - minimal dark theme.",
      "files": [
        {
          "path": "registry/themes/carbonfox.ts",
          "target": "lib/terminal-themes/carbonfox.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-carbonfox",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Carbonfox",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Catppuccin Frappe - soothing pastel.",
      "files": [
        {
          "path": "registry/themes/catppuccin-frappe.ts",
          "target": "lib/terminal-themes/catppuccin-frappe.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-catppuccin-frappe",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Catppuccin Frappe",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Catppuccin Macchiato - deeper pastel tones.",
      "files": [
        {
          "path": "registry/themes/catppuccin-macchiato.ts",
          "target": "lib/terminal-themes/catppuccin-macchiato.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-catppuccin-macchiato",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Catppuccin Macchiato",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Cobalt2 - vibrant blue and gold.",
      "files": [
        {
          "path": "registry/themes/cobalt2.ts",
          "target": "lib/terminal-themes/cobalt2.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-cobalt2",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Cobalt2",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Cursor IDE theme.",
      "files": [
        {
          "path": "registry/themes/cursor.ts",
          "target": "lib/terminal-themes/cursor.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-cursor",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Cursor",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Everforest - warm forest theme.",
      "files": [
        {
          "path": "registry/themes/everforest.ts",
          "target": "lib/terminal-themes/everforest.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-everforest",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Everforest",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Flexoki - versatile theme.",
      "files": [
        {
          "path": "registry/themes/flexoki.ts",
          "target": "lib/terminal-themes/flexoki.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-flexoki",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Flexoki",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "GitHub official dark theme.",
      "files": [
        {
          "path": "registry/themes/github.ts",
          "target": "lib/terminal-themes/github.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-github",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "GitHub",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Gruvbox - retro earth tones.",
      "files": [
        {
          "path": "registry/themes/gruvbox.ts",
          "target": "lib/terminal-themes/gruvbox.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-gruvbox",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Gruvbox",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Kanagawa - Japanese wave theme.",
      "files": [
        {
          "path": "registry/themes/kanagawa.ts",
          "target": "lib/terminal-themes/kanagawa.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-kanagawa",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Kanagawa",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Lucent Orng - warm orange theme.",
      "files": [
        {
          "path": "registry/themes/lucent-orng.ts",
          "target": "lib/terminal-themes/lucent-orng.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-lucent-orng",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Lucent Orng",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Material Design colors.",
      "files": [
        {
          "path": "registry/themes/material.ts",
          "target": "lib/terminal-themes/material.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-material",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Material",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Matrix - green code rain.",
      "files": [
        {
          "path": "registry/themes/matrix.ts",
          "target": "lib/terminal-themes/matrix.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-matrix",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Matrix",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Mercury - clean minimal theme.",
      "files": [
        {
          "path": "registry/themes/mercury.ts",
          "target": "lib/terminal-themes/mercury.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-mercury",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Mercury",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Night Owl - late night coding.",
      "files": [
        {
          "path": "registry/themes/nightowl.ts",
          "target": "lib/terminal-themes/nightowl.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-nightowl",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Night Owl",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "OC-2 - clean minimal theme.",
      "files": [
        {
          "path": "registry/themes/oc-2.ts",
          "target": "lib/terminal-themes/oc-2.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-oc-2",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "OC-2",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "One Dark Pro - VS Code version.",
      "files": [
        {
          "path": "registry/themes/onedarkpro.ts",
          "target": "lib/terminal-themes/onedarkpro.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-onedarkpro",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "One Dark Pro",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "OpenCode official theme.",
      "files": [
        {
          "path": "registry/themes/opencode.ts",
          "target": "lib/terminal-themes/opencode.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-opencode",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "OpenCode",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Orng - vibrant orange theme.",
      "files": [
        {
          "path": "registry/themes/orng.ts",
          "target": "lib/terminal-themes/orng.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-orng",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Orng",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Osaka Jade - Japanese jade theme.",
      "files": [
        {
          "path": "registry/themes/osaka-jade.ts",
          "target": "lib/terminal-themes/osaka-jade.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-osaka-jade",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Osaka Jade",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Palenight - React Native purple.",
      "files": [
        {
          "path": "registry/themes/palenight.ts",
          "target": "lib/terminal-themes/palenight.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-palenight",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Palenight",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Rose Pine - warm rose tones.",
      "files": [
        {
          "path": "registry/themes/rosepine.ts",
          "target": "lib/terminal-themes/rosepine.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-rosepine",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Rose Pine",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Shades of Purple - bold purple.",
      "files": [
        {
          "path": "registry/themes/shadesofpurple.ts",
          "target": "lib/terminal-themes/shadesofpurple.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-shadesofpurple",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Shades of Purple",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Synthwave '84 - retro neon.",
      "files": [
        {
          "path": "registry/themes/synthwave84.ts",
          "target": "lib/terminal-themes/synthwave84.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-synthwave84",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Synthwave '84",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Vercel brand colors.",
      "files": [
        {
          "path": "registry/themes/vercel.ts",
          "target": "lib/terminal-themes/vercel.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-vercel",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Vercel",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Vesper - minimal high contrast.",
      "files": [
        {
          "path": "registry/themes/vesper.ts",
          "target": "lib/terminal-themes/vesper.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-vesper",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Vesper",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Zenburn - low contrast for long sessions.",
      "files": [
        {
          "path": "registry/themes/zenburn.ts",
          "target": "lib/terminal-themes/zenburn.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-zenburn",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "Zenburn",
      "type": "registry:file"
    },
    {
      "categories": ["ai"],
      "dependencies": ["ink"],
      "description": "Collapsible block for displaying extended thinking / reasoning content from an AI model",
      "files": [
        {
          "path": "registry/ui/thinking-block.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/thinking-block",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Thinking Block",
      "type": "registry:ui"
    },
    {
      "categories": ["forms"],
      "description": "Time picker with hour/minute/second spinners",
      "files": [
        {
          "path": "registry/ui/time-picker.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/time-picker",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Time Picker",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["utility"],
      "description": "Countdown timer with pause/resume and auto-start",
      "files": [
        {
          "path": "registry/ui/timer.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/timer",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Timer",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["feedback"],
      "dependencies": ["ink"],
      "description": "Auto-dismissing toast notification",
      "files": [
        {
          "path": "registry/ui/toast.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/toast",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Toast",
      "type": "registry:ui"
    },
    {
      "categories": ["utility"],
      "description": "Toggle/switch component with on/off labels",
      "files": [
        {
          "path": "registry/ui/toggle.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/toggle",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Toggle",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "description": "Compact token counter showing prompt and completion usage with optional cost estimate; also exports ContextMeter for visualising context window fill",
      "files": [
        {
          "path": "registry/ui/token-usage.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/token-usage",
      "title": "Token Usage",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["ai"],
      "dependencies": ["ink"],
      "description": "Interactive approval prompt for AI tool calls with risk-level badge, args display, and auto-deny timeout",
      "files": [
        {
          "path": "registry/ui/tool-approval.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tool-approval",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tool Approval",
      "type": "registry:ui"
    },
    {
      "categories": ["ai"],
      "description": "Displays an AI tool invocation with status indicator, args, result, and elapsed time",
      "files": [
        {
          "path": "registry/ui/tool-call.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tool-call",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-animation.json",
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tool Call",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["overlays"],
      "dependencies": ["ink"],
      "description": "Contextual tooltip on focus or hover",
      "files": [
        {
          "path": "registry/ui/tooltip.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tooltip",
      "title": "Tooltip",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ]
    },
    {
      "categories": ["data"],
      "description": "Expandable/collapsible tree view",
      "files": [
        {
          "path": "registry/ui/tree.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tree",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tree",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["selection"],
      "description": "Hierarchical tree selection",
      "files": [
        {
          "path": "registry/ui/tree-select.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/tree-select",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Tree Select",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["templates"],
      "description": "Real-time dashboard with diamond header, progress metrics, burn rate, predictions, and status bar",
      "files": [
        {
          "path": "registry/ui/usage-monitor.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/usage-monitor",
      "registryDependencies": [
        "https://termcn.dev/r/ink/use-interval.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Usage Monitor",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["core"],
      "dependencies": ["ink"],
      "description": "Frame-based animation helper for terminal UI components.",
      "files": [
        {
          "path": "registry/hooks/use-animation.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-animation",
      "title": "Use Animation",
      "type": "registry:hook",
      "registryDependencies": ["https://termcn.dev/r/ink/use-motion.json"]
    },
    {
      "categories": ["core"],
      "description": "Clipboard hook with browser and terminal fallbacks.",
      "files": [
        {
          "path": "registry/hooks/use-clipboard.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-clipboard",
      "title": "Use Clipboard",
      "type": "registry:hook",
      "dependencies": ["ink"]
    },
    {
      "categories": ["core"],
      "dependencies": ["ink"],
      "description": "Focus helper wrapping Ink's useFocus.",
      "files": [
        {
          "path": "registry/hooks/use-focus.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-focus",
      "title": "Use Focus",
      "type": "registry:hook"
    },
    {
      "categories": ["core"],
      "dependencies": ["ink"],
      "description": "Keyboard input hook wrapping Ink's useInput.",
      "files": [
        {
          "path": "registry/hooks/use-input.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-input",
      "title": "Use Input",
      "type": "registry:hook"
    },
    {
      "categories": ["core"],
      "description": "React-safe interval helper.",
      "files": [
        {
          "path": "registry/hooks/use-interval.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-interval",
      "title": "Use Interval",
      "type": "registry:hook",
      "registryDependencies": ["https://termcn.dev/r/ink/use-motion.json"],
      "dependencies": ["ink"]
    },
    {
      "categories": ["core"],
      "description": "Notifications state and context helpers.",
      "files": [
        {
          "path": "registry/hooks/use-notifications.ts",
          "type": "registry:hook"
        }
      ],
      "name": "ink/use-notifications",
      "title": "Use Notifications",
      "type": "registry:hook"
    },
    {
      "categories": ["data"],
      "description": "Virtualized list for 10k+ items",
      "files": [
        {
          "path": "registry/ui/virtual-list.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/virtual-list",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Virtual List",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["templates"],
      "description": "Two-panel welcome dashboard with titled border, logo, greeting, and sections",
      "files": [
        {
          "path": "registry/ui/welcome-screen.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/welcome-screen",
      "title": "Welcome Screen",
      "type": "registry:ui",
      "registryDependencies": [
        "https://termcn.dev/r/ink/terminal-style.json",
        "https://termcn.dev/r/ink/types.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "dependencies": ["ink"]
    },
    {
      "categories": ["forms"],
      "description": "Multi-step wizard with per-step validation",
      "files": [
        {
          "path": "registry/ui/wizard.tsx",
          "type": "registry:ui"
        }
      ],
      "name": "ink/wizard",
      "registryDependencies": [
        "https://termcn.dev/r/ink/interaction.json",
        "https://termcn.dev/r/ink/terminal-symbols.json",
        "https://termcn.dev/r/ink/use-theme.json",
        "https://termcn.dev/r/ink/use-unicode.json"
      ],
      "title": "Wizard",
      "type": "registry:ui",
      "dependencies": ["ink"]
    },
    {
      "categories": ["themes"],
      "description": "A Catppuccin theme for rich terminal UI previews.",
      "files": [
        {
          "path": "registry/opentui/themes/catppuccin.ts",
          "target": "lib/terminal-themes/catppuccin.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-catppuccin",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Catppuccin",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "The default termcn terminal theme.",
      "files": [
        {
          "path": "registry/opentui/themes/default.ts",
          "target": "lib/terminal-themes/default.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-default",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Default",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A purple-heavy Dracula theme for terminal UI components.",
      "files": [
        {
          "path": "registry/opentui/themes/dracula.ts",
          "target": "lib/terminal-themes/dracula.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-dracula",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Dracula",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "High contrast themes for dark and light terminal backgrounds.",
      "files": [
        {
          "path": "registry/opentui/themes/high-contrast.ts",
          "target": "lib/terminal-themes/high-contrast.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-high-contrast",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "High Contrast",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A classic Monokai-inspired theme for terminal apps.",
      "files": [
        {
          "path": "registry/opentui/themes/monokai.ts",
          "target": "lib/terminal-themes/monokai.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-monokai",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Monokai",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A cool Nord palette tuned for terminal contrast.",
      "files": [
        {
          "path": "registry/opentui/themes/nord.ts",
          "target": "lib/terminal-themes/nord.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-nord",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Nord",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A One Dark theme for terminal components.",
      "files": [
        {
          "path": "registry/opentui/themes/one-dark.ts",
          "target": "lib/terminal-themes/one-dark.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-one-dark",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "One Dark",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "A Solarized theme for terminal components.",
      "files": [
        {
          "path": "registry/opentui/themes/solarized.ts",
          "target": "lib/terminal-themes/solarized.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-solarized",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Solarized",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Tokyo Night colors for terminal interfaces.",
      "files": [
        {
          "path": "registry/opentui/themes/tokyo-night.ts",
          "target": "lib/terminal-themes/tokyo-night.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-tokyo-night",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Tokyo Night",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "AMOLED - high contrast dark theme with pure black.",
      "files": [
        {
          "path": "registry/opentui/themes/amoled.ts",
          "target": "lib/terminal-themes/amoled.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-amoled",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "AMOLED",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Aura - soft elegant theme with pastel purple.",
      "files": [
        {
          "path": "registry/opentui/themes/aura.ts",
          "target": "lib/terminal-themes/aura.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-aura",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Aura",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Ayu - clean modern terminal theme.",
      "files": [
        {
          "path": "registry/opentui/themes/ayu.ts",
          "target": "lib/terminal-themes/ayu.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-ayu",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Ayu",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Carbonfox - minimal dark theme.",
      "files": [
        {
          "path": "registry/opentui/themes/carbonfox.ts",
          "target": "lib/terminal-themes/carbonfox.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-carbonfox",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Carbonfox",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Catppuccin Frappe - soothing pastel.",
      "files": [
        {
          "path": "registry/opentui/themes/catppuccin-frappe.ts",
          "target": "lib/terminal-themes/catppuccin-frappe.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-catppuccin-frappe",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Catppuccin Frappe",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Catppuccin Macchiato - deeper pastel tones.",
      "files": [
        {
          "path": "registry/opentui/themes/catppuccin-macchiato.ts",
          "target": "lib/terminal-themes/catppuccin-macchiato.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-catppuccin-macchiato",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Catppuccin Macchiato",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Cobalt2 - vibrant blue and gold.",
      "files": [
        {
          "path": "registry/opentui/themes/cobalt2.ts",
          "target": "lib/terminal-themes/cobalt2.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-cobalt2",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Cobalt2",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Cursor IDE theme.",
      "files": [
        {
          "path": "registry/opentui/themes/cursor.ts",
          "target": "lib/terminal-themes/cursor.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-cursor",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Cursor",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Everforest - warm forest theme.",
      "files": [
        {
          "path": "registry/opentui/themes/everforest.ts",
          "target": "lib/terminal-themes/everforest.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-everforest",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Everforest",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Flexoki - versatile theme.",
      "files": [
        {
          "path": "registry/opentui/themes/flexoki.ts",
          "target": "lib/terminal-themes/flexoki.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-flexoki",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Flexoki",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "GitHub official dark theme.",
      "files": [
        {
          "path": "registry/opentui/themes/github.ts",
          "target": "lib/terminal-themes/github.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-github",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "GitHub",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Gruvbox - retro earth tones.",
      "files": [
        {
          "path": "registry/opentui/themes/gruvbox.ts",
          "target": "lib/terminal-themes/gruvbox.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-gruvbox",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Gruvbox",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Kanagawa - Japanese wave theme.",
      "files": [
        {
          "path": "registry/opentui/themes/kanagawa.ts",
          "target": "lib/terminal-themes/kanagawa.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-kanagawa",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Kanagawa",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Lucent Orng - warm orange theme.",
      "files": [
        {
          "path": "registry/opentui/themes/lucent-orng.ts",
          "target": "lib/terminal-themes/lucent-orng.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-lucent-orng",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Lucent Orng",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Material Design colors.",
      "files": [
        {
          "path": "registry/opentui/themes/material.ts",
          "target": "lib/terminal-themes/material.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-material",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Material",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Matrix - green code rain.",
      "files": [
        {
          "path": "registry/opentui/themes/matrix.ts",
          "target": "lib/terminal-themes/matrix.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-matrix",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Matrix",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Mercury - clean minimal theme.",
      "files": [
        {
          "path": "registry/opentui/themes/mercury.ts",
          "target": "lib/terminal-themes/mercury.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-mercury",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Mercury",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Night Owl - late night coding.",
      "files": [
        {
          "path": "registry/opentui/themes/nightowl.ts",
          "target": "lib/terminal-themes/nightowl.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-nightowl",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Night Owl",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "OC-2 - clean minimal theme.",
      "files": [
        {
          "path": "registry/opentui/themes/oc-2.ts",
          "target": "lib/terminal-themes/oc-2.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-oc-2",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "OC-2",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "One Dark Pro - VS Code version.",
      "files": [
        {
          "path": "registry/opentui/themes/onedarkpro.ts",
          "target": "lib/terminal-themes/onedarkpro.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-onedarkpro",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "One Dark Pro",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "OpenCode official theme.",
      "files": [
        {
          "path": "registry/opentui/themes/opencode.ts",
          "target": "lib/terminal-themes/opencode.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-opencode",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "OpenCode",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Orng - vibrant orange theme.",
      "files": [
        {
          "path": "registry/opentui/themes/orng.ts",
          "target": "lib/terminal-themes/orng.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-orng",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Orng",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Osaka Jade - Japanese jade theme.",
      "files": [
        {
          "path": "registry/opentui/themes/osaka-jade.ts",
          "target": "lib/terminal-themes/osaka-jade.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-osaka-jade",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Osaka Jade",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Palenight - React Native purple.",
      "files": [
        {
          "path": "registry/opentui/themes/palenight.ts",
          "target": "lib/terminal-themes/palenight.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-palenight",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Palenight",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Rose Pine - warm rose tones.",
      "files": [
        {
          "path": "registry/opentui/themes/rosepine.ts",
          "target": "lib/terminal-themes/rosepine.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-rosepine",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Rose Pine",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Shades of Purple - bold purple.",
      "files": [
        {
          "path": "registry/opentui/themes/shadesofpurple.ts",
          "target": "lib/terminal-themes/shadesofpurple.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-shadesofpurple",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Shades of Purple",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Synthwave '84 - retro neon.",
      "files": [
        {
          "path": "registry/opentui/themes/synthwave84.ts",
          "target": "lib/terminal-themes/synthwave84.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-synthwave84",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Synthwave '84",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Vercel brand colors.",
      "files": [
        {
          "path": "registry/opentui/themes/vercel.ts",
          "target": "lib/terminal-themes/vercel.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-vercel",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Vercel",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Vesper - minimal high contrast.",
      "files": [
        {
          "path": "registry/opentui/themes/vesper.ts",
          "target": "lib/terminal-themes/vesper.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-vesper",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Vesper",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "Zenburn - low contrast for long sessions.",
      "files": [
        {
          "path": "registry/opentui/themes/zenburn.ts",
          "target": "lib/terminal-themes/zenburn.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-zenburn",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "Zenburn",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "WCAG-friendly light high-contrast theme.",
      "files": [
        {
          "path": "registry/themes/high-contrast-light.ts",
          "target": "lib/terminal-themes/high-contrast-light.ts",
          "type": "registry:file"
        }
      ],
      "name": "ink/theme-high-contrast-light",
      "registryDependencies": ["https://termcn.dev/r/ink/types.json"],
      "title": "High Contrast Light",
      "type": "registry:file"
    },
    {
      "categories": ["themes"],
      "description": "WCAG-friendly light high-contrast theme.",
      "files": [
        {
          "path": "registry/opentui/themes/high-contrast-light.ts",
          "target": "lib/terminal-themes/high-contrast-light.ts",
          "type": "registry:file"
        }
      ],
      "name": "opentui/theme-high-contrast-light",
      "registryDependencies": ["https://termcn.dev/r/opentui/types.json"],
      "title": "High Contrast Light",
      "type": "registry:file"
    }
  ],
  "name": "termcn/ui"
}
