{"$schema":"https://ui.shadcn.com/schema/registry.json","name":"easeui","homepage":"https://easeui.dev","items":[{"name":"button","type":"registry:component","title":"Button","description":"Button with a quick press, hairline rings instead of borders, four variants, and a 44px tap area even at small sizes.","author":"Ryan","dependencies":["clsx","motion","tailwind-merge"],"registryDependencies":[],"files":[{"path":"components/motion/button.tsx","type":"registry:component","target":"@components/motion/button.tsx"},{"path":"lib/utils.ts","type":"registry:lib","target":"@lib/utils.ts"}]},{"name":"tabs","type":"registry:component","title":"Tabs","description":"Pill, segment, or underline tabs with an indicator that slides to the selected tab.","author":"Ryan","dependencies":["clsx","motion","tailwind-merge"],"registryDependencies":[],"files":[{"path":"components/motion/tabs.tsx","type":"registry:component","target":"@components/motion/tabs.tsx"},{"path":"lib/utils.ts","type":"registry:lib","target":"@lib/utils.ts"}]},{"name":"select","type":"registry:component","title":"Select","description":"Composable select whose menu fades and scales out of the trigger, and opens upward when there is no room below.","author":"Ryan","dependencies":["clsx","lucide-react","motion","tailwind-merge"],"registryDependencies":[],"files":[{"path":"components/motion/select.tsx","type":"registry:component","target":"@components/motion/select.tsx"},{"path":"lib/utils.ts","type":"registry:lib","target":"@lib/utils.ts"}]},{"name":"tooltip","type":"registry:component","title":"Tooltip","description":"Hover or focus tooltip that fades in beside its trigger. After the first one opens, nearby tooltips appear without a delay.","author":"Ryan","dependencies":["clsx","motion","tailwind-merge"],"registryDependencies":[],"files":[{"path":"components/motion/tooltip.tsx","type":"registry:component","target":"@components/motion/tooltip.tsx"},{"path":"lib/utils.ts","type":"registry:lib","target":"@lib/utils.ts"}]},{"name":"theme-toggle","type":"registry:component","title":"Theme Toggle","description":"Light and dark switch that reveals the new theme as a circle growing from the center of the screen or from the button itself.","author":"Ryan","dependencies":["clsx","lucide-react","motion","next-themes","tailwind-merge"],"registryDependencies":[],"files":[{"path":"components/motion/theme-toggle.tsx","type":"registry:component","target":"@components/motion/theme-toggle.tsx"},{"path":"lib/utils.ts","type":"registry:lib","target":"@lib/utils.ts"}]},{"name":"range-slider","type":"registry:component","title":"Range Slider","description":"Native range input with a filled track and tick dots, so keyboard and screen reader support come built in.","author":"Ryan","dependencies":["clsx","tailwind-merge"],"registryDependencies":[],"files":[{"path":"components/motion/range-slider.tsx","type":"registry:component","target":"@components/motion/range-slider.tsx"},{"path":"lib/utils.ts","type":"registry:lib","target":"@lib/utils.ts"}]}]}