{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "animated-sidebar-shadcnui", "type": "registry:component", "title": "Animated Sidebar", "description": "Sidebar with slide-in animation and overlay", "registryDependencies": [ "button" ], "dependencies": [ "framer-motion", "lucide-react", "react" ], "files": [ { "path": "@uitripled/react-shadcn/src/components/navigation/animated-sidebar.tsx", "content": "\"use client\";\n\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { FileText, Home, Menu, Settings, Users, X } from \"lucide-react\";\nimport { useState } from \"react\";\n\nconst menuItems = [\n { icon: Home, label: \"Dashboard\" },\n { icon: Users, label: \"Team\" },\n { icon: FileText, label: \"Documents\" },\n { icon: Settings, label: \"Settings\" },\n];\n\nexport function AnimatedSidebar() {\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n
\n setIsOpen(true)}\n className=\"rounded-lg bg-accent px-4 py-2 text-sm font-medium text-[var(--muted-foreground)]\"\n whileHover={{ scale: 1.05 }}\n whileTap={{ scale: 0.95 }}\n >\n \n \n\n \n {isOpen && (\n <>\n setIsOpen(false)}\n />\n\n \n
\n \n Menu\n \n setIsOpen(false)}\n whileHover={{ rotate: 90, scale: 1.1 }}\n whileTap={{ scale: 0.9 }}\n className=\"text-[var(--foreground)]/60 hover:text-[var(--foreground)]\"\n >\n \n \n
\n\n \n \n \n )}\n
\n
\n );\n}\n", "type": "registry:component", "target": "components/uitripled/animated-sidebar-shadcnui.tsx" } ] }