{ "$schema": "https://ui.shadcn.com/schema/registry.json", "name": "wensity", "homepage": "https://ui.wensity.com", "count": 92, "items": [ { "name": "font-inter", "type": "registry:font", "title": "Inter Font", "description": "Inter font package and shadcn CSS variables for Wensity primitives.", "categories": [ "wensity", "font", "free" ], "dependencies": [ "@fontsource/inter" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/font-inter.json", "meta": { "kind": "font", "docsUrl": "https://ui.wensity.com/docs/primitives" } }, { "name": "font-geist", "type": "registry:font", "title": "Geist Font", "description": "Geist display font package and shadcn CSS variables for Wensity primitives.", "categories": [ "wensity", "font", "free" ], "dependencies": [ "@fontsource/geist" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/font-geist.json", "meta": { "kind": "font", "docsUrl": "https://ui.wensity.com/docs/primitives" } }, { "name": "wensity-base", "type": "registry:base", "title": "Wensity Base", "description": "Wensity primitive design-system tokens for shadcn projects: fonts, base colors, controls, charts, radii, overlays, and motion.", "categories": [ "wensity", "base", "design-system", "free" ], "dependencies": [], "registryDependencies": [ "@wensity/font-inter", "@wensity/font-geist" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/wensity-base.json", "meta": { "kind": "base", "docsUrl": "https://ui.wensity.com/docs/primitives", "cliInstall": "pnpm dlx wensity@latest init --preset " } }, { "name": "liquid-multimodal-input", "type": "registry:block", "title": "AI Prompt Input", "description": "An expanding prompt area with a glowing drop zone that breathes open to meet you as you type a thought or drag a file.", "categories": [ "Agentic AI Interfaces", "wensity", "free" ], "dependencies": [ "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/liquid-multimodal-input.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/liquid-multimodal-input", "cliInstall": "pnpm dlx wensity@latest add liquid-multimodal-input" } }, { "name": "generative-skeleton-mesh", "type": "registry:block", "title": "Animated Loading Skeleton", "description": "An organic loading state instead of a spinner, with a slow aurora that breathes in the space where your content will land.", "categories": [ "Agentic AI Interfaces", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/generative-skeleton-mesh.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/generative-skeleton-mesh", "cliInstall": "pnpm dlx wensity@latest add generative-skeleton-mesh" } }, { "name": "voice-aurora-wave", "type": "registry:block", "title": "Voice Aurora Wave", "description": "A breathing voice orb that swells with speech and settles between turns, never jittery and always organic to look at.", "categories": [ "Agentic AI Interfaces", "wensity", "free" ], "dependencies": [ "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/voice-aurora-wave.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/voice-aurora-wave", "cliInstall": "pnpm dlx wensity@latest add voice-aurora-wave" } }, { "name": "model-context-switcher", "type": "registry:block", "title": "Model Context Switcher", "description": "A Radix dropdown that scales out from its trigger and glides the selection pill across to meet whichever model you pick.", "categories": [ "Agentic AI Interfaces", "wensity", "free" ], "dependencies": [ "framer-motion", "@tabler/icons-react", "@radix-ui/react-dropdown-menu" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/model-context-switcher.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/model-context-switcher", "cliInstall": "pnpm dlx wensity@latest add model-context-switcher" } }, { "name": "infinite-marquee", "type": "registry:block", "title": "Infinite Marquee", "description": "A seamless, GPU-only logo strip that never stutters or snaps at the loop point.", "categories": [ "Cinematic Interactions", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/infinite-marquee.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/infinite-marquee", "cliInstall": "pnpm dlx wensity@latest add infinite-marquee" } }, { "name": "morphing-shape-background", "type": "registry:block", "title": "Morphing Shape Background", "description": "Lava-lamp blobs that drift behind your hero at 120fps with no SVG morphing.", "categories": [ "Cinematic Interactions", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/morphing-shape-background.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/morphing-shape-background", "cliInstall": "pnpm dlx wensity@latest add morphing-shape-background" } }, { "name": "scrubbable-video-reveal", "type": "registry:block", "title": "Scrubbable Video Reveal", "description": "An Apple-style image sequence scrubbed frame by frame on canvas, following your hand as you scroll in either direction.", "categories": [ "Cinematic Interactions", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/scrubbable-video-reveal.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/scrubbable-video-reveal", "cliInstall": "pnpm dlx wensity@latest add scrubbable-video-reveal" } }, { "name": "animated-tabs", "type": "registry:block", "title": "Animated Tabs", "description": "A physical stack of photo cards shuffled to the front by clipped tabs, with a tight image inset and copy in the footer.", "categories": [ "Cinematic Interactions", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/animated-tabs.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/animated-tabs", "cliInstall": "pnpm dlx wensity@latest add animated-tabs" } }, { "name": "gooey-navigation-menu", "type": "registry:block", "title": "Gooey Navigation Menu", "description": "A liquid FAB whose child actions stretch out of the trigger like molten metal.", "categories": [ "Elite Micro-Interactions", "wensity", "free" ], "dependencies": [ "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/gooey-navigation-menu.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/gooey-navigation-menu", "cliInstall": "pnpm dlx wensity@latest add gooey-navigation-menu" } }, { "name": "multi-select-token-pills", "type": "registry:block", "title": "Multi-Select Token Pills", "description": "A tag input where pills pop in as you add them and slide out on remove, closing the gap without snapping the layout.", "categories": [ "Elite Micro-Interactions", "wensity", "free" ], "dependencies": [ "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/multi-select-token-pills.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/multi-select-token-pills", "cliInstall": "pnpm dlx wensity@latest add multi-select-token-pills" } }, { "name": "shimmering-skeleton-wrapper", "type": "registry:block", "title": "Shimmering Skeleton Wrapper", "description": "One angled GPU sweep that travels across any placeholder geometry you wrap, never a separate shimmer stuttering per row.", "categories": [ "Elite Micro-Interactions", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/shimmering-skeleton-wrapper.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/shimmering-skeleton-wrapper", "cliInstall": "pnpm dlx wensity@latest add shimmering-skeleton-wrapper" } }, { "name": "cool-button", "type": "registry:block", "title": "Cool Button", "description": "A dual-layer orbit glow that soft-spins around the edge of any button or link you wrap it around, at zero layout cost.", "categories": [ "Elite Micro-Interactions", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/cool-button.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/cool-button", "cliInstall": "pnpm dlx wensity@latest add cool-button" } }, { "name": "file-uploader", "type": "registry:block", "title": "File Uploader", "description": "A bold red dropzone for any file, with gallery tiles and progress after upload.", "categories": [ "Elite Micro-Interactions", "wensity", "free" ], "dependencies": [ "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/file-uploader.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/file-uploader", "cliInstall": "pnpm dlx wensity@latest add file-uploader" } }, { "name": "before-after-card", "type": "registry:block", "title": "Image Comparison Slider", "description": "Drag the handle to wipe between before and after images with absolutely zero lag.", "categories": [ "Elite Micro-Interactions", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/before-after-card.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/before-after-card", "cliInstall": "pnpm dlx wensity@latest add before-after-card" } }, { "name": "github-activity-grid", "type": "registry:block", "title": "GitHub-Style Activity Grid", "description": "365 squares sharing one tooltip that flies between days on rails, with a reveal that ripples backward from today.", "categories": [ "Heavy SaaS Blocks", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/github-activity-grid.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/github-activity-grid", "cliInstall": "pnpm dlx wensity@latest add github-activity-grid" } }, { "name": "text-shimmer", "type": "registry:block", "title": "Text Shimmer", "description": "A CSS shimmer sweep for headlines, one single element and entirely GPU-friendly.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-shimmer.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-shimmer", "cliInstall": "pnpm dlx wensity@latest add text-shimmer" } }, { "name": "text-flip", "type": "registry:block", "title": "Text Flip", "description": "A 3D character flip on hover, staggered and springy across every single letter.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-flip.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-flip", "cliInstall": "pnpm dlx wensity@latest add text-flip" } }, { "name": "text-morphing", "type": "registry:block", "title": "Text Morphing", "description": "Blur-morphing headlines that cycle phrases with a gooey, seamless crossfade.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-morphing.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-morphing", "cliInstall": "pnpm dlx wensity@latest add text-morphing" } }, { "name": "text-char-slide", "type": "registry:block", "title": "Text Char Slide", "description": "A per-character slide-left cascade with a cleanly staggered entrance timing.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-char-slide.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-char-slide", "cliInstall": "pnpm dlx wensity@latest add text-char-slide" } }, { "name": "text-motion", "type": "registry:block", "title": "Text Motion", "description": "Headline entrances driven entirely by your own custom Framer Motion variants.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-motion.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-motion", "cliInstall": "pnpm dlx wensity@latest add text-motion" } }, { "name": "text-cycle", "type": "registry:block", "title": "Text Cycle", "description": "Cycles through your headline words with a soft per-character blur stagger.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-cycle.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-cycle", "cliInstall": "pnpm dlx wensity@latest add text-cycle" } }, { "name": "text-word-flip", "type": "registry:block", "title": "Text Word Flip", "description": "Spring-loaded word flips paired with a soft letter-by-letter blur stagger.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-word-flip.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-word-flip", "cliInstall": "pnpm dlx wensity@latest add text-word-flip" } }, { "name": "text-blur-reveal", "type": "registry:block", "title": "Text Blur Reveal", "description": "A blur-in stagger by word or by letter, triggered the moment you scroll.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-blur-reveal.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-blur-reveal", "cliInstall": "pnpm dlx wensity@latest add text-blur-reveal" } }, { "name": "canvas-text", "type": "registry:block", "title": "Canvas Text", "description": "Loading-ring canvas particles that slowly resolve into solid letterforms.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/canvas-text.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/canvas-text", "cliInstall": "pnpm dlx wensity@latest add canvas-text" } }, { "name": "line-fill-text", "type": "registry:block", "title": "Line Fill Text", "description": "Bold type filled with flowing curved linework that bends round the cursor.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/line-fill-text.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/line-fill-text", "cliInstall": "pnpm dlx wensity@latest add line-fill-text" } }, { "name": "text-glitch", "type": "registry:block", "title": "Text Glitch", "description": "A chromatic clip-path glitch for headlines, CSS-only and entirely GPU-friendly.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-glitch.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-glitch", "cliInstall": "pnpm dlx wensity@latest add text-glitch" } }, { "name": "text-path", "type": "registry:block", "title": "Text Path", "description": "SVG text riding a curved wave, arc, or circle path on a seamless, light loop.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-path.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-path", "cliInstall": "pnpm dlx wensity@latest add text-path" } }, { "name": "text-highlight", "type": "registry:block", "title": "Text Highlight", "description": "A hand-placed highlighter band that sweeps in behind your text and tracks wrapping.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-highlight.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-highlight", "cliInstall": "pnpm dlx wensity@latest add text-highlight" } }, { "name": "text-scribble", "type": "registry:block", "title": "Text Scribble", "description": "Hand-drawn scribble, underline, and strike marks that draw themselves onto text.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-scribble.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-scribble", "cliInstall": "pnpm dlx wensity@latest add text-scribble" } }, { "name": "text-chroma-reveal", "type": "registry:block", "title": "Text Chroma Reveal", "description": "A chromatic ribbon sweep that paints each of your headlines cleanly into view.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-chroma-reveal.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-chroma-reveal", "cliInstall": "pnpm dlx wensity@latest add text-chroma-reveal" } }, { "name": "text-spectrum", "type": "registry:block", "title": "Text Spectrum", "description": "An animated multi-stop color wash that drifts endlessly through headlines.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-spectrum.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-spectrum", "cliInstall": "pnpm dlx wensity@latest add text-spectrum" } }, { "name": "text-ripple", "type": "registry:block", "title": "Text Ripple", "description": "A 3D character ripple with a traveling color crest, CSS-only and GPU-light.", "categories": [ "Text Animations", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-ripple.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/components/text-ripple", "cliInstall": "pnpm dlx wensity@latest add text-ripple" } }, { "name": "button", "type": "registry:block", "title": "Button", "description": "An accessible action primitive with solid, outline, ghost, and destructive variants, plus sizes, icons, and loading state.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/button.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/button", "cliInstall": "pnpm dlx wensity@latest add button" } }, { "name": "button-group", "type": "registry:block", "title": "Button Group", "description": "A segmented action group with shared borders, split primary actions, and dropdown menu support for dense toolbars.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/button-group.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/button-group", "cliInstall": "pnpm dlx wensity@latest add button-group" } }, { "name": "input", "type": "registry:block", "title": "Input", "description": "An accessible text field with labels, hints, inline errors, leading and trailing icons, and a one-tap clear action.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/input.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/input", "cliInstall": "pnpm dlx wensity@latest add input" } }, { "name": "text-area", "type": "registry:block", "title": "Text Area", "description": "An accessible multi-line field with auto-resize, character counts, validation states, and variants for notes or prompts.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/text-area.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/text-area", "cliInstall": "pnpm dlx wensity@latest add text-area" } }, { "name": "select", "type": "registry:block", "title": "Select", "description": "An accessible select with a polished trigger, grouped options, controlled state, and keyboard navigation throughout.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/select.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/select", "cliInstall": "pnpm dlx wensity@latest add select" } }, { "name": "form-field", "type": "registry:block", "title": "Form Field", "description": "A composable field wrapper carrying labels, descriptions, inline errors, and section layouts for any form you assemble.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/form-field.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/form-field", "cliInstall": "pnpm dlx wensity@latest add form-field" } }, { "name": "badge", "type": "registry:block", "title": "Badge", "description": "Status and metadata badges with icons, presence dots, removable chips, and just enough depth to read as a real surface.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/badge.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/badge", "cliInstall": "pnpm dlx wensity@latest add badge" } }, { "name": "checkbox", "type": "registry:block", "title": "Checkbox", "description": "An accessible checkbox with sharply focused styles, grouped rows, selectable cards, and a proper indeterminate state.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/checkbox.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/checkbox", "cliInstall": "pnpm dlx wensity@latest add checkbox" } }, { "name": "switch", "type": "registry:block", "title": "Switch", "description": "An accessible switch with distinct variants, smooth motion, grouped rows, selectable cards, and fully controlled state.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/switch.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/switch", "cliInstall": "pnpm dlx wensity@latest add switch" } }, { "name": "radio-group", "type": "registry:block", "title": "Radio Group", "description": "Native radio selection with distinctive rows, segmented layouts, selectable cards, and controlled state throughout.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/radio-group.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/radio-group", "cliInstall": "pnpm dlx wensity@latest add radio-group" } }, { "name": "toggle", "type": "registry:block", "title": "Toggle", "description": "A pressable on/off control with default, icon, outline, and soft variants, plus grouped selection for toolbars.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/toggle.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/toggle", "cliInstall": "pnpm dlx wensity@latest add toggle" } }, { "name": "label", "type": "registry:block", "title": "Label", "description": "An accessible form label with default, required, optional, muted, and inline variants for any field group you build.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/label.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/label", "cliInstall": "pnpm dlx wensity@latest add label" } }, { "name": "input-otp", "type": "registry:block", "title": "Input OTP", "description": "An accessible one-time code field with alphanumeric, masked, and grouped variants for verification and two-factor flows.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/input-otp.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/input-otp", "cliInstall": "pnpm dlx wensity@latest add input-otp" } }, { "name": "combobox", "type": "registry:block", "title": "Combobox", "description": "A searchable combobox with multi-select, async option loading, and creatable entries for forms, filters, and pickers.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/combobox.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/combobox", "cliInstall": "pnpm dlx wensity@latest add combobox" } }, { "name": "avatar", "type": "registry:block", "title": "Avatar", "description": "Identity avatars with image fallbacks, presence status rings, stacked groups, and an upload affordance for profile edits.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/avatar.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/avatar", "cliInstall": "pnpm dlx wensity@latest add avatar" } }, { "name": "table", "type": "registry:block", "title": "Table", "description": "A structured table with sortable columns, row selection, expandable rows, and sticky headers for dashboards and admin.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/table.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/table", "cliInstall": "pnpm dlx wensity@latest add table" } }, { "name": "progress", "type": "registry:block", "title": "Progress", "description": "Progress indicators in linear, circular, segmented, indeterminate, and stacked forms for uploads and onboarding.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/progress.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/progress", "cliInstall": "pnpm dlx wensity@latest add progress" } }, { "name": "alert", "type": "registry:block", "title": "Alert", "description": "Inline status feedback for info, success, warning, and error states, including action-oriented messages with buttons.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/alert.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/alert", "cliInstall": "pnpm dlx wensity@latest add alert" } }, { "name": "skeleton", "type": "registry:block", "title": "Skeleton", "description": "Loading placeholders for text, avatars, cards, and tables, plus a wrapper for composing your own custom layouts.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/skeleton.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/skeleton", "cliInstall": "pnpm dlx wensity@latest add skeleton" } }, { "name": "spinner", "type": "registry:block", "title": "Spinner", "description": "Indeterminate loading indicators in default, ring, dots, pulse, and overlay styles for inline and blocking states.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/spinner.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/spinner", "cliInstall": "pnpm dlx wensity@latest add spinner" } }, { "name": "toast", "type": "registry:block", "title": "Toast", "description": "Transient notifications for info, success, warning, and error states, with action buttons and stacked positioning.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/toast.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/toast", "cliInstall": "pnpm dlx wensity@latest add toast" } }, { "name": "dialog", "type": "registry:block", "title": "Dialog", "description": "Accessible modal dialogs in default, confirmation, form, fullscreen, and scrollable layouts for any focused task.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/dialog.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/dialog", "cliInstall": "pnpm dlx wensity@latest add dialog" } }, { "name": "sheet", "type": "registry:block", "title": "Sheet", "description": "Edge-mounted panels that slide in from any side, with an optional persistent mode for inspectors and navigation.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/sheet.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/sheet", "cliInstall": "pnpm dlx wensity@latest add sheet" } }, { "name": "drawer", "type": "registry:block", "title": "Drawer", "description": "Gesture-driven drawers with velocity dismissal, snap points, drag handles, and support for every side of the screen.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/drawer.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/drawer", "cliInstall": "pnpm dlx wensity@latest add drawer" } }, { "name": "popover", "type": "registry:block", "title": "Popover", "description": "Floating panels for menus, inline forms, and rich previews, with controlled state and collision-aware positioning.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/popover.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/popover", "cliInstall": "pnpm dlx wensity@latest add popover" } }, { "name": "tooltip", "type": "registry:block", "title": "Tooltip", "description": "Contextual hints carrying rich content, keyboard shortcut labels, and optional cursor tracking as you move across.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/tooltip.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/tooltip", "cliInstall": "pnpm dlx wensity@latest add tooltip" } }, { "name": "tabs", "type": "registry:block", "title": "Tabs", "description": "Tabbed navigation with a sliding indicator, segmented control styling, vertical layouts, and smooth state changes.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/tabs.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/tabs", "cliInstall": "pnpm dlx wensity@latest add tabs" } }, { "name": "breadcrumb", "type": "registry:block", "title": "Breadcrumb", "description": "A wayfinding trail with smart collapsing, dropdown overflow menus, custom separators, and animated hover states.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/breadcrumb.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/breadcrumb", "cliInstall": "pnpm dlx wensity@latest add breadcrumb" } }, { "name": "pagination", "type": "registry:block", "title": "Pagination", "description": "Page navigation with numbered pages, compact counters, first and last controls, and progressive loading for lists.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/pagination.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/pagination", "cliInstall": "pnpm dlx wensity@latest add pagination" } }, { "name": "card", "type": "registry:block", "title": "Card", "description": "Premium content containers with media, stat, feature, and interactive variants, plus responsive spacing throughout.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/card.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/card", "cliInstall": "pnpm dlx wensity@latest add card" } }, { "name": "separator", "type": "registry:block", "title": "Separator", "description": "Dividers for layout sections, carrying text labels, gradient fades, dashed borders, and vertical split support.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/separator.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/separator", "cliInstall": "pnpm dlx wensity@latest add separator" } }, { "name": "scroll-area", "type": "registry:block", "title": "Scroll Area", "description": "A styled scrolling container with auto-hide scrollbars, keeping constrained panels, lists, and overflow regions tidy.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/scroll-area.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/scroll-area", "cliInstall": "pnpm dlx wensity@latest add scroll-area" } }, { "name": "resizable", "type": "registry:block", "title": "Resizable", "description": "Resizable panel layouts with draggable splitters, panel snapping, collapsible regions, and local size persistence.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/resizable.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/resizable", "cliInstall": "pnpm dlx wensity@latest add resizable" } }, { "name": "hover-card", "type": "registry:block", "title": "Hover Card", "description": "Snappy preview overlays triggered by hovering a link or name, with rich content and no click interruption at all.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/hover-card.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/hover-card", "cliInstall": "pnpm dlx wensity@latest add hover-card" } }, { "name": "accordion", "type": "registry:block", "title": "Accordion", "description": "Expandable disclosure sections for FAQs and settings, with single or multiple open modes and nested content support.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/accordion.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/accordion", "cliInstall": "pnpm dlx wensity@latest add accordion" } }, { "name": "aspect-ratio", "type": "registry:block", "title": "Aspect Ratio", "description": "Media containers that hold preset ratios across responsive layouts, with a shimmer placeholder while images load.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/aspect-ratio.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/aspect-ratio", "cliInstall": "pnpm dlx wensity@latest add aspect-ratio" } }, { "name": "attachment", "type": "registry:block", "title": "Attachment", "description": "File attachment rows for uploads, chats, and media previews, with download actions and per-type document icons.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/attachment.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/attachment", "cliInstall": "pnpm dlx wensity@latest add attachment" } }, { "name": "calendar", "type": "registry:block", "title": "Calendar", "description": "Date grids for single, range, and multi-date selection, with month navigation and event-ready day rendering.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/calendar.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/calendar", "cliInstall": "pnpm dlx wensity@latest add calendar" } }, { "name": "carousel", "type": "registry:block", "title": "Carousel", "description": "Swipeable carousels with slide indicators, autoplay, looping, and keyboard navigation for galleries and showcases.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/carousel.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/carousel", "cliInstall": "pnpm dlx wensity@latest add carousel" } }, { "name": "chart", "type": "registry:block", "title": "Chart", "description": "Recharts line, bar, area, pie, and radar views with themed tooltips, responsive sizing, and consistent axis styling.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "recharts", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/chart.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/chart", "cliInstall": "pnpm dlx wensity@latest add chart" } }, { "name": "collapsible", "type": "registry:block", "title": "Collapsible", "description": "Collapsible panels for sidebar sections, show-more previews, and any secondary content you want out of the way.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/collapsible.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/collapsible", "cliInstall": "pnpm dlx wensity@latest add collapsible" } }, { "name": "slider", "type": "registry:block", "title": "Slider", "description": "An accessible slider built on Base UI, with keyboard and pointer support and a value bubble that reveals on drag.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/slider.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/slider", "cliInstall": "pnpm dlx wensity@latest add slider" } }, { "name": "command", "type": "registry:block", "title": "Command", "description": "A command palette with fuzzy search, grouped actions, keyboard shortcuts, and fast navigation built on top of cmdk.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/command.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/command", "cliInstall": "pnpm dlx wensity@latest add command" } }, { "name": "context-menu", "type": "registry:block", "title": "Context Menu", "description": "Contextual actions on right-click, with grouped sections, nested submenus, shortcut labels, and destructive items.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/context-menu.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/context-menu", "cliInstall": "pnpm dlx wensity@latest add context-menu" } }, { "name": "data-table", "type": "registry:block", "title": "Data Table", "description": "Data tables with search, sorting, filtering, row selection, pagination, and expandable detail rows for dashboards.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/data-table.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/data-table", "cliInstall": "pnpm dlx wensity@latest add data-table" } }, { "name": "date-picker", "type": "registry:block", "title": "Date Picker", "description": "Calendar popovers for single, range, and multi-date picks, with presets, time selection, and month or year quick-nav.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/date-picker.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/date-picker", "cliInstall": "pnpm dlx wensity@latest add date-picker" } }, { "name": "direction", "type": "registry:block", "title": "Direction", "description": "LTR and RTL direction context for layout and composition, driving reading order from the active locale automatically.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/direction.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/direction", "cliInstall": "pnpm dlx wensity@latest add direction" } }, { "name": "dropdown-menu", "type": "registry:block", "title": "Dropdown Menu", "description": "Compact actions from any trigger, with grouped sections, nested submenus, checkbox and radio items, and shortcuts.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/dropdown-menu.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/dropdown-menu", "cliInstall": "pnpm dlx wensity@latest add dropdown-menu" } }, { "name": "empty-state", "type": "registry:block", "title": "Empty State", "description": "Empty layouts for placeholders, search results, and errors, with basic, action, illustration, and avatar variants.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "framer-motion" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/empty-state.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/empty-state", "cliInstall": "pnpm dlx wensity@latest add empty-state" } }, { "name": "field", "type": "registry:block", "title": "Field", "description": "A composable field shell carrying labels, help text, required markers, and error, success, and validation states.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/field.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/field", "cliInstall": "pnpm dlx wensity@latest add field" } }, { "name": "kbd", "type": "registry:block", "title": "Kbd", "description": "Keyboard key styling for shortcuts, hotkey hints, documentation, and inline command labels anywhere in your app.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/kbd.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/kbd", "cliInstall": "pnpm dlx wensity@latest add kbd" } }, { "name": "marker", "type": "registry:block", "title": "Marker", "description": "Status markers for live state, ordered points, and contextual cues, with solid dots and pulsing presence indicators.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "framer-motion", "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/marker.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/marker", "cliInstall": "pnpm dlx wensity@latest add marker" } }, { "name": "native-select", "type": "registry:block", "title": "Native Select", "description": "Browser-native option selection for forms, with grouped options, placeholders, inline variants, and error states.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [], "href": "https://raw.githubusercontent.com/wensity/registry/main/native-select.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/native-select", "cliInstall": "pnpm dlx wensity@latest add native-select" } }, { "name": "navigation-menu", "type": "registry:block", "title": "Navigation Menu", "description": "Primary navigation with dropdown panels, mega menus, nested links, and full keyboard accessibility for headers.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/navigation-menu.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/navigation-menu", "cliInstall": "pnpm dlx wensity@latest add navigation-menu" } }, { "name": "sidebar", "type": "registry:block", "title": "Sidebar", "description": "App sidebars with collapsible rails, grouped sections, badge counts, resizable widths, and keyboard shortcut support.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react", "framer-motion", "@tabler/icons-react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/sidebar.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/sidebar", "cliInstall": "pnpm dlx wensity@latest add sidebar" } }, { "name": "typography", "type": "registry:block", "title": "Typography", "description": "Type primitives for headings, prose blocks, lead and muted text, inline code, and consistently styled lists.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/typography.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/typography", "cliInstall": "pnpm dlx wensity@latest add typography" } }, { "name": "color-picker", "type": "registry:block", "title": "Color Picker", "description": "Saturation and value canvas with hue and alpha rails, a screen eyedropper, and HEX, RGB, or HSL fields in one popover.", "categories": [ "UI Primitives", "wensity", "free" ], "dependencies": [ "@tabler/icons-react", "@base-ui/react" ], "href": "https://raw.githubusercontent.com/wensity/registry/main/color-picker.json", "meta": { "kind": "component", "componentUrl": "https://ui.wensity.com/primitives/color-picker", "cliInstall": "pnpm dlx wensity@latest add color-picker" } } ] }