{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "pricing-section-shadcnui", "type": "registry:page", "title": "Pricing Section", "description": "Animated pricing cards with hover effects and feature lists", "dependencies": [ "framer-motion", "react" ], "files": [ { "path": "@uitripled/react-shadcn/src/components/sections/pricing-section.tsx", "content": "\"use client\";\n\nimport { Badge } from \"@/components/ui/badge\";\nimport { Button } from \"@/components/ui/button\";\nimport {\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from \"@/components/ui/card\";\nimport { motion, useInView } from \"framer-motion\";\nimport { Check } from \"lucide-react\";\nimport { useRef } from \"react\";\nimport { cn } from \"@/lib/utils\";\n\nconst plans = [\n {\n name: \"Starter\",\n price: \"$0\",\n period: \"/month\",\n description: \"Perfect for personal projects\",\n features: [\n \"10 Components\",\n \"Community Support\",\n \"Basic Animations\",\n \"Documentation\",\n ],\n popular: false,\n },\n {\n name: \"Pro\",\n price: \"$29\",\n period: \"/month\",\n description: \"Best for growing businesses\",\n features: [\n \"50+ Components\",\n \"Priority Support\",\n \"Advanced Animations\",\n \"Source Code\",\n \"Custom Requests\",\n ],\n popular: true,\n },\n {\n name: \"Enterprise\",\n price: \"$99\",\n period: \"/month\",\n description: \"For large-scale applications\",\n features: [\n \"Unlimited Components\",\n \"24/7 Support\",\n \"Premium Animations\",\n \"White-label\",\n \"Dedicated Team\",\n ],\n popular: false,\n },\n];\n\nexport function PricingSection() {\n const ref = useRef(null);\n const isInView = useInView(ref, { once: true, margin: \"-100px\" });\n\n return (\n \n
\n \n \n Simple, transparent pricing\n \n

\n Choose the plan that's right for you\n

\n \n\n
\n {plans.map((plan, index) => (\n \n \n {plan.popular && (\n
\n \n Popular\n \n
\n )}\n\n \n \n {plan.name}\n \n
\n \n {plan.price}\n \n \n {plan.period}\n \n
\n \n {plan.description}\n \n
\n\n \n \n {plan.features.map((feature) => (\n \n \n \n
\n {feature}\n \n ))}\n \n\n \n {plan.name === \"Enterprise\" ? \"Contact Sales\" : \"Get Started\"}\n \n \n \n \n ))}\n
\n \n \n );\n}\n", "type": "registry:page", "target": "components/uitripled/pricing-section-shadcnui.tsx" } ] }