{"$schema":"https://ui.shadcn.com/schema/registry.json","name":"lode","homepage":"https://lodeui.com","items":[{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"button","type":"registry:ui","title":"Button","description":"A clear, responsive action with quiet secondary states.","registryDependencies":["utils"],"files":[{"path":"components/ui/button.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"segmented-control","type":"registry:ui","title":"Segmented control","description":"A compact single choice with a pill that slides to the selection.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/segmented-control.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"number-field","type":"registry:ui","title":"Number field","description":"A stepper you can press, hold, scrub, or type into. Push past a limit and it pushes back.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/number-field.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"select","type":"registry:ui","title":"Select","description":"A pill trigger with a springy menu, typeahead, and full keyboard support.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/select.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"date-range-picker","type":"registry:ui","title":"Date range picker","description":"Pick a start and an end on a calendar that previews the range as you move.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/date-range-picker.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"command-palette","type":"registry:ui","title":"Command palette","description":"Type to filter, arrow to move, Enter to run. Inline or as a ⌘K dialog.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/command-palette.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"animated-number","type":"registry:ui","title":"Animated number","description":"A number that springs to its new value instead of jumping.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/animated-number.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"donut-chart","type":"registry:ui","title":"Donut chart","description":"Proportions as arcs that morph when the data changes.","dependencies":["motion"],"registryDependencies":["utils","animated-number"],"meta":{"pro":true},"files":[{"path":"components/ui/donut-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"area-chart","type":"registry:ui","title":"Area chart","description":"A smooth trend line with a comparison period and an inspectable crosshair.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/area-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"switch","type":"registry:ui","title":"Switch","description":"A toggle whose thumb stretches as you press it.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/switch.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"slider","type":"registry:ui","title":"Slider","description":"Drag, click or use the keys. The value rides above the thumb while you drag.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/slider.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"dropdown-menu","type":"registry:ui","title":"Dropdown menu","description":"Actions, checkboxes and radio options in a springy menu with full keyboard support.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/dropdown-menu.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"action-button","type":"registry:ui","title":"Action button","description":"A button that morphs through saving, saved and failed, right where you clicked.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/action-button.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"number-ticker","type":"registry:ui","title":"Number ticker","description":"Every digit rolls on its own wheel, odometer style.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/number-ticker.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"tabs","type":"registry:ui","title":"Tabs","description":"Underline or pill tabs with an indicator that glides between them.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/tabs.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"tooltip","type":"registry:ui","title":"Tooltip","description":"A small label on hover or focus, with a delay that respects intent.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/tooltip.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"checkbox","type":"registry:ui","title":"Checkbox","description":"A checkbox whose tick draws itself, with an indeterminate state.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/checkbox.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"progress","type":"registry:ui","title":"Progress","description":"Linear bar, ring and segmented meter, all spring-driven.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/progress.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"toast","type":"registry:ui","title":"Toast","description":"Stacked notifications that fan out on hover, swipe to dismiss, and track promises.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/toast.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"dialog","type":"registry:ui","title":"Dialog","description":"A modal or side sheet with focus trap, scroll lock and focus return.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/dialog.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"accordion","type":"registry:ui","title":"Accordion","description":"Expandable sections with smooth height and a turning plus.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/accordion.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"otp-input","type":"registry:ui","title":"OTP input","description":"One-time code boxes that handle paste and autofill, and shake on a wrong code.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/otp-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"avatar-group","type":"registry:ui","title":"Avatar group","description":"Overlapping avatars that spread apart on hover.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/avatar-group.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"sparkline","type":"registry:ui","title":"Sparkline","description":"A tiny trend line that draws itself in.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/sparkline.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"bar-chart","type":"registry:ui","title":"Bar chart","description":"Bars that grow in and morph between datasets, with a hover readout.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/bar-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"candlestick-chart","type":"registry:ui","title":"Candlestick chart","description":"OHLC candles with volume, moving averages and a price crosshair.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/candlestick-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"heatmap","type":"registry:ui","title":"Heatmap","description":"A color-scaled grid with row and column tracking, for cohorts and schedules.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/heatmap.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"stacked-area-chart","type":"registry:ui","title":"Stacked area chart","description":"Stacked series above and below zero, morphing as the range changes.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/stacked-area-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"folder-stack","type":"registry:ui","title":"Folder stack","description":"A folder that fans its files out on hover and opens them in a lightbox.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/folder-stack.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"profile-card","type":"registry:ui","title":"Profile card","description":"A portrait whose details rise into a glass panel on hover.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/profile-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"metrics-dashboard","type":"registry:block","title":"Metrics dashboard","description":"KPI tabs, one inspectable chart with period comparison, and top pages and sources.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","area-chart","number-ticker","segmented-control","switch"],"meta":{"pro":true},"files":[{"path":"components/blocks/metrics-dashboard.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"revenue-breakdown","type":"registry:block","title":"Revenue breakdown","description":"Recurring revenue split into new, expansion and churn, with a draggable range brush.","dependencies":["motion"],"registryDependencies":["utils","number-ticker","segmented-control","stacked-area-chart"],"meta":{"pro":true},"files":[{"path":"components/blocks/revenue-breakdown.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"mrr-waterfall","type":"registry:block","title":"MRR waterfall","description":"How MRR moved from start to end of a period, and which accounts moved it.","dependencies":["motion"],"registryDependencies":["utils","number-ticker","segmented-control"],"meta":{"pro":true},"files":[{"path":"components/blocks/mrr-waterfall.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"cohort-retention","type":"registry:block","title":"Cohort retention","description":"Retention by signup month as a heatmap, with segments.","dependencies":[],"registryDependencies":["utils","heatmap","number-ticker","segmented-control"],"meta":{"pro":true},"files":[{"path":"components/blocks/cohort-retention.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"usage-forecast","type":"registry:block","title":"Usage forecast","description":"Actual and projected usage against a budget, with the day you'll cross it.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","checkbox","number-ticker","tabs"],"meta":{"pro":true},"files":[{"path":"components/blocks/usage-forecast.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"billing-settings","type":"registry:block","title":"Billing settings","description":"Plan, payment method, usage meters, invoices and a prorated plan change.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","button","dialog","number-ticker","progress","segmented-control"],"meta":{"pro":true},"files":[{"path":"components/blocks/billing-settings.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"trading-terminal","type":"registry:block","title":"Trading terminal","description":"Live price, candlesticks, a watchlist with sparklines and an order ticket.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","candlestick-chart","number-field","number-ticker","segmented-control","sparkline"],"meta":{"pro":true},"files":[{"path":"components/blocks/trading-terminal.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"agent-run","type":"registry:block","title":"Agent run","description":"An AI coding agent's run: steps stream in with search results, code and a diff.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","button"],"meta":{"pro":true},"files":[{"path":"components/blocks/agent-run.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ai-chat","type":"registry:block","title":"AI chat","description":"A chat with streamed answers, model picker, suggestions and stop.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","dropdown-menu"],"meta":{"pro":true},"files":[{"path":"components/blocks/ai-chat.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"inbox-triage","type":"registry:block","title":"Inbox triage","description":"Keyboard-first triage: j/k to move, e to archive, s to snooze, with undo.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","tabs"],"meta":{"pro":true},"files":[{"path":"components/blocks/inbox-triage.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"week-calendar","type":"registry:block","title":"Week calendar","description":"A week view with calendars, a now line, and click-to-create events.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","button","checkbox"],"meta":{"pro":true},"files":[{"path":"components/blocks/week-calendar.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"onboarding-checklist","type":"registry:block","title":"Onboarding checklist","description":"A setup checklist with progress ring and inline actions.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","progress"],"files":[{"path":"components/blocks/onboarding-checklist.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"pricing-section","type":"registry:block","title":"Pricing section","description":"Three tiers with a monthly/yearly toggle whose prices roll.","dependencies":["lucide-react"],"registryDependencies":["utils","button","number-ticker","segmented-control"],"files":[{"path":"components/blocks/pricing-section.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"input","type":"registry:ui","title":"Input","description":"Text, search, password and URL inputs with icons, clear button and a labelled Field wrapper.","dependencies":["lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"textarea","type":"registry:ui","title":"Textarea","description":"A textarea that grows with its content, with an optional character counter.","registryDependencies":["utils"],"files":[{"path":"components/ui/textarea.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"badge","type":"registry:ui","title":"Badge","description":"Tone badges and status dots for states like paid, pending, live and degraded.","registryDependencies":["utils"],"files":[{"path":"components/ui/badge.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"alert","type":"registry:ui","title":"Alert","description":"Inline alerts and page banners in four tones, with actions and dismiss.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/alert.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"skeleton","type":"registry:ui","title":"Skeleton","description":"Shimmering placeholders for loading content.","registryDependencies":["utils"],"files":[{"path":"components/ui/skeleton.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"empty-state","type":"registry:ui","title":"Empty state","description":"Empty, no-results, error, offline, maintenance and rate-limit states with one API.","dependencies":["lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/empty-state.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"breadcrumb","type":"registry:ui","title":"Breadcrumb","description":"Hierarchy trail that collapses long paths and works with any router link.","dependencies":["lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/breadcrumb.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"pagination","type":"registry:ui","title":"Pagination","description":"Page numbers with ellipses and a gliding current-page indicator.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/pagination.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"stepper","type":"registry:ui","title":"Stepper","description":"Horizontal or vertical steps with animated progress and back-navigation.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/stepper.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"radio-group","type":"registry:ui","title":"Radio group","description":"Radios as a list or as choice cards, with arrow-key navigation.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/radio-group.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"tag-input","type":"registry:ui","title":"Tag input","description":"Type, paste or pick suggestions to add tags; validates each one.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/tag-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"combobox","type":"registry:ui","title":"Combobox","description":"Searchable select for one or many values, fully keyboard driven.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/combobox.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"popover","type":"registry:ui","title":"Popover","description":"An anchored panel for filters, forms and details.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/popover.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"kpi-card","type":"registry:ui","title":"KPI card","description":"A metric with delta, hint and an optional sparkline.","dependencies":["lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/kpi-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"timeline","type":"registry:ui","title":"Timeline","description":"Vertical activity timeline with toned icons that stagger in.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/timeline.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"data-table","type":"registry:ui","title":"Data table","description":"Sorting, search, filters, selection, bulk actions, column visibility, pagination, expandable rows, export and mobile cards.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/data-table.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"code-viewer","type":"registry:ui","title":"Code viewer","description":"File tabs, line numbers, highlighted lines, copy and expand, with a dependency-free highlighter.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/code-viewer.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"terminal","type":"registry:ui","title":"Terminal","description":"A terminal window that types commands and streams output, with replay and copy.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/terminal.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"json-viewer","type":"registry:ui","title":"JSON viewer","description":"Collapsible, syntax-colored JSON tree.","dependencies":["lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/json-viewer.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"diff-viewer","type":"registry:ui","title":"Diff viewer","description":"Line diff in unified or split view with added/removed counts.","dependencies":["motion"],"registryDependencies":["utils","segmented-control"],"meta":{"pro":true},"files":[{"path":"components/ui/diff-viewer.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"log-viewer","type":"registry:ui","title":"Log viewer","description":"Live log stream with level filters, search and follow mode.","dependencies":["lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/log-viewer.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"uptime-bar","type":"registry:ui","title":"Uptime bar","description":"Daily status bars with uptime percentage and incident tooltips.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/uptime-bar.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"env-editor","type":"registry:ui","title":"Environment editor","description":"Masked env vars with per-environment scope, validation and .env paste.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/env-editor.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"spotlight-card","type":"registry:ui","title":"Spotlight card","description":"A card lit by a spotlight that follows the pointer, border included.","registryDependencies":["utils"],"files":[{"path":"components/ui/spotlight-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"magnetic","type":"registry:ui","title":"Magnetic","description":"Makes any element lean toward the pointer and spring back.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/magnetic.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"text-reveal","type":"registry:ui","title":"Text reveal","description":"Text that rises out of a blur, word by word, as it scrolls into view.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/text-reveal.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"text-scramble","type":"registry:ui","title":"Text scramble","description":"Characters cycle through glyphs and settle into the final text.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/text-scramble.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"border-beam","type":"registry:ui","title":"Border beam","description":"A light that travels around an element's border.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/border-beam.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"shimmer-text","type":"registry:ui","title":"Shimmer text","description":"Text with a light sweep, for thinking and loading states.","registryDependencies":["utils"],"files":[{"path":"components/ui/shimmer-text.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"reveal","type":"registry:ui","title":"Reveal","description":"Scroll-triggered fade-and-slide, plus a Stagger for groups.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/reveal.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"sortable-list","type":"registry:ui","title":"Sortable list","description":"Drag to reorder, or use arrow keys on the handle; announces moves.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/sortable-list.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"tilt-card","type":"registry:ui","title":"Tilt card","description":"A card that tilts in 3D toward the pointer with a moving glare.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/tilt-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"line-chart","type":"registry:ui","title":"Line chart","description":"Multi-series lines with legend toggles, crosshair and shared tooltip.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/line-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"funnel-chart","type":"registry:ui","title":"Funnel chart","description":"Conversion funnel with overall and step-to-step rates.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/funnel-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"gauge","type":"registry:ui","title":"Gauge","description":"Half-circle gauge with warning and danger thresholds.","dependencies":["motion"],"registryDependencies":["utils"],"files":[{"path":"components/ui/gauge.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"prompt-input","type":"registry:ui","title":"Prompt input","description":"Chat composer that grows, takes files by picker, paste or drop, and turns into Stop while generating.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/prompt-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ai-reasoning","type":"registry:ui","title":"AI reasoning","description":"A collapsible thinking trace that folds into a summary when done.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","shimmer-text"],"meta":{"pro":true},"files":[{"path":"components/ui/ai-reasoning.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"citation-list","type":"registry:ui","title":"Citation list","description":"Numbered sources and inline citation marks for AI answers.","dependencies":["lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/citation-list.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"rating","type":"registry:ui","title":"Rating","description":"Interactive or read-only star rating with half stars.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"files":[{"path":"components/ui/rating.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"product-card","type":"registry:ui","title":"Product card","description":"Product tile with swatches, wishlist, sale price and add-to-cart.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","rating"],"meta":{"pro":true},"files":[{"path":"components/ui/product-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"dock","type":"registry:ui","title":"Dock","description":"macOS-style dock whose icons magnify under the pointer, with tooltips, badges and active dots.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/dock.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"marquee","type":"registry:ui","title":"Marquee","description":"Endless, seamless scroller for logos and testimonials that glides to a stop on hover.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/marquee.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"flip-card","type":"registry:ui","title":"Flip card","description":"A two-sided card that flips in 3D on click, Enter or hover.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/flip-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"swipe-deck","type":"registry:ui","title":"Swipe deck","description":"Tinder-style card stack: drag, tap or use arrow keys to pass or like, with undo.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/swipe-deck.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"like-button","type":"registry:ui","title":"Like button","description":"Heart toggle that bursts into particles and rolls its count.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/like-button.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"hold-to-confirm","type":"registry:ui","title":"Hold to confirm","description":"Press and hold to confirm destructive or important actions; letting go cancels.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/hold-to-confirm.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"slide-to-confirm","type":"registry:ui","title":"Slide to confirm","description":"Drag the handle to the end to confirm a payment or action; Enter works too.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/slide-to-confirm.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"typewriter","type":"registry:ui","title":"Typewriter","description":"Types phrases out, deletes them and moves on, with a blinking caret.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/typewriter.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"word-rotate","type":"registry:ui","title":"Word rotate","description":"Cycles words in place with a blur-slide while the width springs to fit.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/word-rotate.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"aurora-background","type":"registry:ui","title":"Aurora background","description":"Slow drifting northern-lights glow behind any section.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/aurora-background.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"morphing-dialog","type":"registry:ui","title":"Morphing dialog","description":"A card that morphs into a dialog: cover, title and frame fly to their new places.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/morphing-dialog.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"animated-list","type":"registry:ui","title":"Animated list","description":"A feed where new entries spring in at the top and older ones make room.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/animated-list.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"image-compare","type":"registry:ui","title":"Image compare","description":"Before and after slider with drag, hover and keyboard control.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/image-compare.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"carousel","type":"registry:ui","title":"Carousel","description":"Swipeable slides with arrows, animated dots, keys and pausable autoplay.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/carousel.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"color-picker","type":"registry:ui","title":"Color picker","description":"Saturation and hue pickers, hex field, swatches, eyedropper and copy.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/color-picker.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"file-dropzone","type":"registry:ui","title":"File dropzone","description":"Drag-and-drop upload with type, size and count checks and per-file progress.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/file-dropzone.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"scroll-progress","type":"registry:ui","title":"Scroll progress","description":"A reading progress bar that springs with the page or any scroll container.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/scroll-progress.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"dynamic-island","type":"registry:ui","title":"Dynamic island","description":"A black pill that morphs its size and shape to fit live activity.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/dynamic-island.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"expandable-tabs","type":"registry:ui","title":"Expandable tabs","description":"Icon tabs where the selected one grows to reveal its label.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/expandable-tabs.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"tree-view","type":"registry:ui","title":"Tree view","description":"Folders and files with animated expand, indent guides and full tree keyboard support.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/tree-view.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"context-menu","type":"registry:ui","title":"Context menu","description":"Right-click menu that opens at the pointer, with long-press, typeahead and shortcuts.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/context-menu.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"hover-card","type":"registry:ui","title":"Hover card","description":"A rich preview that appears on hover or focus and stays while you move into it.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/hover-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"orbiting-circles","type":"registry:ui","title":"Orbiting circles","description":"Icons orbiting a center on rings, staying upright as they travel.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/orbiting-circles.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"flip-clock","type":"registry:ui","title":"Flip clock","description":"Split-flap countdown where every digit flips like a departures board.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/flip-clock.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"contribution-graph","type":"registry:ui","title":"Contribution graph","description":"A year of activity as a grid of days with tooltips and keyboard exploring.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/contribution-graph.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"resizable-panels","type":"registry:ui","title":"Resizable panels","description":"Panels with draggable, keyboard-resizable dividers and double-click reset.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/resizable-panels.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"drawer","type":"registry:ui","title":"Drawer","description":"A bottom sheet you drag down to dismiss, with focus trap and safe-area padding.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/drawer.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"confetti","type":"registry:ui","title":"Confetti","description":"Fire a confetti burst from any point, or use the button that bursts from itself.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/confetti.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"range-slider","type":"registry:ui","title":"Range slider","description":"Two-thumb range with value bubbles and an optional live histogram.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/range-slider.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"wheel-picker","type":"registry:ui","title":"Wheel picker","description":"iOS-style scroll wheel with 3D rows, snapping and keyboard support.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/wheel-picker.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"toggle-group","type":"registry:ui","title":"Toggle group","description":"A row of toggle buttons for one choice (alignment) or several (bold, italic), with a sliding pill.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/toggle-group.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"mention-input","type":"registry:ui","title":"Mention input","description":"A textarea that suggests people as you type @ and inserts their handle.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/mention-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"password-strength","type":"registry:ui","title":"Password strength","description":"New-password field with show / hide, a four-step meter and a live rules checklist.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/password-strength.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"phone-input","type":"registry:ui","title":"Phone input","description":"Phone field with a searchable country picker that formats numbers as you type.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/phone-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"credit-card-input","type":"registry:ui","title":"Credit card input","description":"Card fields with brand detection, Luhn validation and a live card that flips for the CVC.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/credit-card-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"signature-pad","type":"registry:ui","title":"Signature pad","description":"Draw a signature with mouse, pen or finger; strokes thin with speed. Undo and clear.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/signature-pad.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"knob","type":"registry:ui","title":"Knob","description":"A rotary dial like on audio gear: drag, scroll or use the arrow keys.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/knob.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"inline-edit","type":"registry:ui","title":"Inline edit","description":"Text that becomes a field on click; Enter saves with validation, Escape cancels.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/inline-edit.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"calendar","type":"registry:ui","title":"Calendar","description":"Single-date calendar with month and year jumping, marked days and grid keyboard support.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/calendar.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"time-slot-picker","type":"registry:ui","title":"Time slot picker","description":"Bookable time slots where picking one slides out a confirm button.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/time-slot-picker.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"navigation-menu","type":"registry:ui","title":"Navigation menu","description":"Header menu whose panels slide between triggers and morph to fit, with featured cards.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/navigation-menu.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"sidebar","type":"registry:ui","title":"Sidebar","description":"App sidebar that collapses to icons, with nested groups, badges and a gliding active marker.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/sidebar.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"speed-dial","type":"registry:ui","title":"Speed dial","description":"A floating action button that fans out labelled actions.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/speed-dial.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"bottom-nav","type":"registry:ui","title":"Bottom nav","description":"Mobile tab bar with an animated indicator, badges and safe-area padding.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/bottom-nav.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"table-of-contents","type":"registry:ui","title":"Table of contents","description":"On-this-page list that highlights the current section, with a gliding marker and progress ring.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/table-of-contents.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"loader","type":"registry:ui","title":"Loader","description":"Six loading indicators (spinner, dots, bars, pulse, orbit, ring) with one API.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/loader.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"notification-center","type":"registry:ui","title":"Notification center","description":"A bell with unread badge opening a panel with tabs, mark-all-read and dismiss.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/notification-center.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"announcement-bar","type":"registry:ui","title":"Announcement bar","description":"A slim dismissible bar above the header that rotates launch messages.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/announcement-bar.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"typing-indicator","type":"registry:ui","title":"Typing indicator","description":"Bouncing dots in a chat bubble with who is typing.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/typing-indicator.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"radar-chart","type":"registry:ui","title":"Radar chart","description":"Compare series across dimensions; shapes morph and legend toggles series.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/radar-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"scatter-chart","type":"registry:ui","title":"Scatter chart","description":"Points or bubbles on two measures with groups, hover card and keyboard-focusable dots.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/scatter-chart.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"treemap","type":"registry:ui","title":"Treemap","description":"Squarified rectangles sized by value, for revenue mix, storage and market caps.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/treemap.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"activity-rings","type":"registry:ui","title":"Activity rings","description":"Concentric progress rings like a fitness watch, overlapping past 100%.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/activity-rings.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"gradient-text","type":"registry:ui","title":"Gradient text","description":"Text filled with a slowly flowing gradient.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/gradient-text.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"particles","type":"registry:ui","title":"Particles","description":"A drifting constellation of dots on canvas that moves away from the pointer.","registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/particles.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"meteors","type":"registry:ui","title":"Meteors","description":"Shooting stars streaking across a card or hero.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/meteors.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ripple-button","type":"registry:ui","title":"Ripple button","description":"A button that ripples from wherever it's pressed.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/ripple-button.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"animated-beam","type":"registry:ui","title":"Animated beam","description":"A glowing pulse travelling along a curved line between two elements.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/animated-beam.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"grid-pattern","type":"registry:ui","title":"Grid pattern","description":"A technical grid background where a few cells gently light up.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/grid-pattern.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"scroll-stack","type":"registry:ui","title":"Scroll stack","description":"Cards that stick and stack as you scroll, earlier ones shrinking into the pile.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/scroll-stack.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"theme-switch","type":"registry:ui","title":"Theme switch","description":"A day / night switch: the sun sets into a moon and the stars come out.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/theme-switch.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"video-player","type":"registry:ui","title":"Video player","description":"Video with custom auto-hiding controls, scrubbing, captions, fullscreen and shortcuts.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/video-player.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"audio-player","type":"registry:ui","title":"Audio player","description":"Compact audio player with a clickable waveform, skip and playback speed.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/audio-player.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"image-lens","type":"registry:ui","title":"Image lens","description":"A magnifying glass that follows the pointer (or arrow keys) over an image.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/image-lens.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"lightbox","type":"registry:ui","title":"Lightbox","description":"Thumbnail grid that opens a full-screen viewer with swipe, arrows and captions.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/lightbox.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"chat-message","type":"registry:ui","title":"Chat message","description":"A chat turn with streaming cursor, copy, feedback and regenerate.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/chat-message.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"voice-orb","type":"registry:ui","title":"Voice orb","description":"A living orb for voice assistants: idle, listening, thinking and speaking states.","dependencies":["motion"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/voice-orb.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"coupon-input","type":"registry:ui","title":"Coupon input","description":"Promo code field that validates, shows a removable ticket and shakes on errors.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/coupon-input.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"payment-card","type":"registry:ui","title":"Payment card","description":"A wallet card with a holographic sheen that follows the pointer and a number reveal.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/payment-card.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"product-tour","type":"registry:ui","title":"Product tour","description":"A guided tour: a spotlight glides between elements with an explaining card.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/ui/product-tour.tsx","type":"registry:ui"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"revenue-analytics","type":"registry:block","title":"SaaS revenue analytics","description":"Revenue trend, MRR, ARR, customers and conversion, source mix and a live transactions feed.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","area-chart","number-ticker","segmented-control","sparkline"],"meta":{"pro":true},"files":[{"path":"components/blocks/revenue-analytics.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"api-keys-manager","type":"registry:block","title":"API keys manager","description":"Create scoped live/test keys, reveal once, copy, and revoke with confirmation.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","badge","button","checkbox","dialog","input","select"],"meta":{"pro":true},"files":[{"path":"components/blocks/api-keys-manager.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"deployments","type":"registry:block","title":"Deployments","description":"Deployment history with status, branch and commit, live build logs and redeploy.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","badge","button","terminal"],"meta":{"pro":true},"files":[{"path":"components/blocks/deployments.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"webhook-logs","type":"registry:block","title":"Webhook logs","description":"Webhook deliveries with payload and response inspection, failure filter and retry.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","badge","json-viewer","segmented-control"],"meta":{"pro":true},"files":[{"path":"components/blocks/webhook-logs.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"system-status","type":"registry:block","title":"System status","description":"Overall status, 60-day uptime per service and incident history.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","timeline","uptime-bar"],"files":[{"path":"components/blocks/system-status.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"feature-flags","type":"registry:block","title":"Feature flags","description":"Flags per environment with switches, percentage rollouts and a change log.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","badge","segmented-control","slider","switch"],"meta":{"pro":true},"files":[{"path":"components/blocks/feature-flags.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"api-playground","type":"registry:block","title":"API playground","description":"Pick an endpoint, edit headers and body, send, and read the JSON response or cURL.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","badge","button","code-viewer","json-viewer","select","tabs"],"meta":{"pro":true},"files":[{"path":"components/blocks/api-playground.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"env-variables","type":"registry:block","title":"Environment variables","description":"Project env vars with masking, scopes, .env paste, dirty state and save.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","env-editor"],"meta":{"pro":true},"files":[{"path":"components/blocks/env-variables.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"crm-pipeline","type":"registry:block","title":"CRM pipeline","description":"Drag deals across stages; open, weighted forecast and won totals update live.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","number-ticker"],"meta":{"pro":true},"files":[{"path":"components/blocks/crm-pipeline.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"crm-contacts","type":"registry:block","title":"CRM contacts","description":"Contacts on the data table with filters, expandable details, bulk email, tag and delete.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","badge","data-table","toast"],"meta":{"pro":true},"files":[{"path":"components/blocks/crm-contacts.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"store-orders","type":"registry:block","title":"Store orders","description":"Order KPIs, status and channel filters, bulk fulfil, packing slips and CSV export.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","badge","data-table","kpi-card","sparkline","toast"],"meta":{"pro":true},"files":[{"path":"components/blocks/store-orders.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"product-detail","type":"registry:block","title":"Product detail","description":"Gallery that follows the color, variants with stock, quantity and add to cart.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","accordion","action-button","number-field","rating"],"meta":{"pro":true},"files":[{"path":"components/blocks/product-detail.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"support-ticket","type":"registry:block","title":"Support ticket","description":"Conversation with internal notes, macros, SLA countdown and customer context.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","badge","button","select"],"meta":{"pro":true},"files":[{"path":"components/blocks/support-ticket.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"cms-posts","type":"registry:block","title":"CMS posts","description":"Posts by status and an editor with tags, word count, preview and publish.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","badge","button","tabs","tag-input","textarea"],"meta":{"pro":true},"files":[{"path":"components/blocks/cms-posts.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"sign-in","type":"registry:block","title":"Sign in","description":"Password or magic link, SSO and GitHub, inline validation and a check-your-email state.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","button","input"],"files":[{"path":"components/blocks/sign-in.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"two-factor","type":"registry:block","title":"Two-factor verification","description":"Authenticator code with resend timer, backup-code fallback and success state.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","button","otp-input"],"files":[{"path":"components/blocks/two-factor.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ai-playground","type":"registry:block","title":"AI playground","description":"Compare two models on one prompt with parameters, reasoning, streaming, tokens and cost.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","ai-reasoning","badge","button","slider","switch","textarea"],"meta":{"pro":true},"files":[{"path":"components/blocks/ai-playground.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"kanban-board","type":"registry:block","title":"Kanban board","description":"Sprint board with drag between columns, WIP limits, quick add and points.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","badge"],"meta":{"pro":true},"files":[{"path":"components/blocks/kanban-board.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"team-members","type":"registry:block","title":"Team members","description":"Seat usage, invite by email with role, change roles, resend or remove.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","badge","button","dialog","dropdown-menu","progress","select","tag-input","toast"],"meta":{"pro":true},"files":[{"path":"components/blocks/team-members.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"saas-landing","type":"registry:block","title":"SaaS landing page","description":"Hero with signup, logos, feature grid, stats, testimonials, pricing, FAQ, CTA and footer.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","accordion","button","input","number-ticker","reveal","segmented-control","spotlight-card","text-reveal"],"meta":{"pro":true},"files":[{"path":"components/templates/saas-landing.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"status-page","type":"registry:block","title":"Status page","description":"A public status page with subscribe, uptime per service and incident history.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","button","input","popover","system-status"],"files":[{"path":"components/templates/status-page.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"admin-dashboard","type":"registry:block","title":"Admin dashboard","description":"App shell with sidebar (drawer on mobile), top bar, breadcrumbs and pages for overview, customers, team, billing and API keys.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","breadcrumb","revenue-analytics","crm-contacts","team-members","billing-settings","api-keys-manager"],"meta":{"pro":true},"files":[{"path":"components/templates/admin-dashboard.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"hero-section","type":"registry:block","title":"Hero section","description":"Launch hero with badge, flowing gradient headline, two actions and a live product preview on a glowing grid.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","gradient-text","grid-pattern","number-ticker","sparkline"],"meta":{"pro":true},"files":[{"path":"components/blocks/hero-section.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"feature-bento","type":"registry:block","title":"Feature bento","description":"A bento grid of features, each with a small live visual and a pointer spotlight.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","number-ticker","spotlight-card"],"meta":{"pro":true},"files":[{"path":"components/blocks/feature-bento.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"testimonials-wall","type":"registry:block","title":"Testimonials wall","description":"Testimonials in slowly scrolling columns that pause on hover, rows on phones.","dependencies":["lucide-react"],"registryDependencies":["utils","marquee"],"meta":{"pro":true},"files":[{"path":"components/blocks/testimonials-wall.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"stats-section","type":"registry:block","title":"Stats section","description":"Headline numbers that count up when they scroll into view.","dependencies":["motion"],"registryDependencies":["utils","number-ticker"],"meta":{"pro":true},"files":[{"path":"components/blocks/stats-section.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"logo-cloud","type":"registry:block","title":"Logo cloud","description":"Trusted-by logos as an endless strip or a static grid.","registryDependencies":["utils","marquee"],"meta":{"pro":true},"files":[{"path":"components/blocks/logo-cloud.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"cta-section","type":"registry:block","title":"CTA section","description":"A dark closing call to action with meteors and an email capture.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","meteors"],"meta":{"pro":true},"files":[{"path":"components/blocks/cta-section.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"faq-section","type":"registry:block","title":"FAQ section","description":"Searchable FAQ with category filters, an accordion and a contact fallback.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","accordion"],"meta":{"pro":true},"files":[{"path":"components/blocks/faq-section.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"changelog","type":"registry:block","title":"Changelog","description":"Release notes timeline with type filters, cover art and subscribe.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/blocks/changelog.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"footer-section","type":"registry:block","title":"Footer section","description":"Site footer with link columns, newsletter, live status and socials.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/blocks/footer-section.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"pricing-comparison","type":"registry:block","title":"Pricing comparison","description":"Plan comparison table with sticky headers, yearly toggle and a mobile plan picker.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","number-ticker","segmented-control","tooltip"],"meta":{"pro":true},"files":[{"path":"components/blocks/pricing-comparison.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"invoice","type":"registry:block","title":"Invoice","description":"An invoice with status timeline, line items, totals, copyable bank details and pay.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","action-button","badge"],"meta":{"pro":true},"files":[{"path":"components/blocks/invoice.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"checkout","type":"registry:block","title":"Checkout","description":"Three-step checkout with shipping choice, card entry, promo codes and order summary.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","coupon-input","credit-card-input","stepper"],"meta":{"pro":true},"files":[{"path":"components/blocks/checkout.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"shopping-cart","type":"registry:block","title":"Shopping cart","description":"Cart with quantity steppers, remove with undo and free-shipping progress.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","number-ticker"],"meta":{"pro":true},"files":[{"path":"components/blocks/shopping-cart.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"order-tracking","type":"registry:block","title":"Order tracking","description":"Shipment tracking with a route map, moving van, stepper and event timeline.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/blocks/order-tracking.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"sign-up","type":"registry:block","title":"Sign up","description":"Three-step sign-up: account, password with live rules and email code verification.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","otp-input","password-strength"],"meta":{"pro":true},"files":[{"path":"components/blocks/sign-up.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"forgot-password","type":"registry:block","title":"Forgot password","description":"Password reset: request link, resend timer, new password and done state.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","password-strength"],"meta":{"pro":true},"files":[{"path":"components/blocks/forgot-password.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"onboarding-wizard","type":"registry:block","title":"Onboarding wizard","description":"Welcome flow for role, goals, team size and invites, ending with confetti.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","confetti","tag-input"],"meta":{"pro":true},"files":[{"path":"components/blocks/onboarding-wizard.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"settings-account","type":"registry:block","title":"Account settings","description":"Profile with inline edits, security toggles, active sessions and guarded delete.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","dialog","inline-edit","switch"],"meta":{"pro":true},"files":[{"path":"components/blocks/settings-account.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"notification-preferences","type":"registry:block","title":"Notification preferences","description":"Channel-by-event matrix with column toggles, quiet hours and unsaved-changes bar.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","checkbox","select","switch"],"meta":{"pro":true},"files":[{"path":"components/blocks/notification-preferences.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"integrations-gallery","type":"registry:block","title":"Integrations gallery","description":"Searchable integrations with categories and connect / disconnect in place.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/blocks/integrations-gallery.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ai-image-generator","type":"registry:block","title":"AI image generator","description":"Prompt to images with style and ratio, shimmer placeholders, likes and a lightbox.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","lightbox","segmented-control"],"meta":{"pro":true},"files":[{"path":"components/blocks/ai-image-generator.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ai-search","type":"registry:block","title":"AI search","description":"Answer engine with streamed reasoning, inline citations, sources and follow-ups.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","ai-reasoning","citation-list"],"meta":{"pro":true},"files":[{"path":"components/blocks/ai-search.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"meeting-scheduler","type":"registry:block","title":"Meeting scheduler","description":"Book a call: host card, calendar, time slots and confirmation.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","calendar","time-slot-picker"],"meta":{"pro":true},"files":[{"path":"components/blocks/meeting-scheduler.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"file-manager","type":"registry:block","title":"File manager","description":"File browser with folders, grid / list views, search, stars and right-click actions.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","context-menu","progress"],"meta":{"pro":true},"files":[{"path":"components/blocks/file-manager.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"team-chat","type":"registry:block","title":"Team chat","description":"Team chat with channels, reactions, mentions, typing indicator and mobile drawer.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","mention-input","typing-indicator"],"meta":{"pro":true},"files":[{"path":"components/blocks/team-chat.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"crypto-wallet","type":"registry:block","title":"Crypto wallet","description":"Wallet balance, portfolio chart, holdings with sparklines and a slide-to-send flow.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","area-chart","dialog","number-ticker","segmented-control","slide-to-confirm","sparkline"],"meta":{"pro":true},"files":[{"path":"components/blocks/crypto-wallet.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"expense-tracker","type":"registry:block","title":"Expense tracker","description":"Spending by category, budget bars that warn, quick add and recent expenses.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","donut-chart","number-ticker"],"meta":{"pro":true},"files":[{"path":"components/blocks/expense-tracker.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"help-center","type":"registry:block","title":"Help center","description":"Help center with instant search, topics, article reader and feedback.","dependencies":["motion","lucide-react"],"registryDependencies":["utils"],"meta":{"pro":true},"files":[{"path":"components/blocks/help-center.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"realtime-analytics","type":"registry:block","title":"Realtime analytics","description":"Live visitors counter, per-second bars, event feed, top pages and devices.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","animated-list","number-ticker"],"meta":{"pro":true},"files":[{"path":"components/blocks/realtime-analytics.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"lead-detail","type":"registry:block","title":"Lead detail","description":"CRM lead with deal stage, AI lead score, activity timeline, notes and next steps.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","badge","gauge","select","tabs"],"meta":{"pro":true},"files":[{"path":"components/blocks/lead-detail.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ai-landing","type":"registry:block","title":"AI startup landing","description":"A landing page for an AI assistant: streaming chat hero, animated data-flow diagram, features, pricing and FAQ.","dependencies":["lucide-react"],"registryDependencies":["utils","animated-beam","chat-message","cta-section","faq-section","feature-bento","footer-section","hero-section","logo-cloud","pricing-section","testimonials-wall","voice-orb"],"meta":{"pro":true},"files":[{"path":"components/templates/ai-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"fintech-landing","type":"registry:block","title":"Fintech landing","description":"A neobank landing page: stacked holographic cards, rates, budget rings, trust stats and FAQ.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","activity-rings","cta-section","faq-section","footer-section","hero-section","number-ticker","payment-card","stats-section","testimonials-wall"],"meta":{"pro":true},"files":[{"path":"components/templates/fintech-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"devtool-landing","type":"registry:block","title":"Developer tool landing","description":"An API platform landing page: terminal hero, code sample, features grid, plan comparison and changelog.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","changelog","code-viewer","cta-section","footer-section","grid-pattern","hero-section","logo-cloud","pricing-comparison","terminal"],"meta":{"pro":true},"files":[{"path":"components/templates/devtool-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"ecommerce-landing","type":"registry:block","title":"E-commerce landing","description":"A storefront landing page: perks ticker, editorial hero, product grid with cart, story and reviews.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","cta-section","footer-section","marquee","product-card","testimonials-wall"],"meta":{"pro":true},"files":[{"path":"components/templates/ecommerce-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"agency-landing","type":"registry:block","title":"Agency landing","description":"A studio landing page: word-by-word headline, capabilities ticker, morphing case studies and services.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","cta-section","footer-section","marquee","morphing-dialog","stats-section","testimonials-wall","text-reveal"],"meta":{"pro":true},"files":[{"path":"components/templates/agency-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"app-landing","type":"registry:block","title":"Mobile app landing","description":"A mobile app landing page: phone mockup, store buttons, scroll-stacked features and reviews.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","activity-rings","cta-section","faq-section","footer-section","scroll-stack","testimonials-wall"],"meta":{"pro":true},"files":[{"path":"components/templates/app-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"crm-landing","type":"registry:block","title":"CRM landing","description":"A CRM landing page: live pipeline hero, feature bento, results stats and plan comparison.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","cta-section","feature-bento","footer-section","hero-section","logo-cloud","number-ticker","pricing-comparison","stats-section"],"meta":{"pro":true},"files":[{"path":"components/templates/crm-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"analytics-landing","type":"registry:block","title":"Analytics landing","description":"An analytics SaaS landing page with an embedded live realtime dashboard demo.","dependencies":["lucide-react"],"registryDependencies":["utils","cta-section","faq-section","feature-bento","footer-section","hero-section","logo-cloud","pricing-section","realtime-analytics","testimonials-wall"],"meta":{"pro":true},"files":[{"path":"components/templates/analytics-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"waitlist-landing","type":"registry:block","title":"Waitlist landing","description":"A one-screen waitlist page: particles, countdown, email capture, referral link and signup count.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","avatar-group","flip-clock","gradient-text","number-ticker","particles"],"meta":{"pro":true},"files":[{"path":"components/templates/waitlist-landing.tsx","type":"registry:component"}]},{"$schema":"https://ui.shadcn.com/schema/registry-item.json","name":"conference-landing","type":"registry:block","title":"Conference landing","description":"An event landing page: countdown, speakers, day-by-day schedule, tickets and FAQ.","dependencies":["motion","lucide-react"],"registryDependencies":["utils","cta-section","faq-section","flip-clock","footer-section","grid-pattern","logo-cloud","tabs"],"meta":{"pro":true},"files":[{"path":"components/templates/conference-landing.tsx","type":"registry:component"},{"path":"components/templates/landing-kit.tsx","type":"registry:component"}]}]}