{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "feature-velocity",
  "dependencies": [
    "motion"
  ],
  "devDependencies": [],
  "registryDependencies": [],
  "files": [
    {
      "path": "../../packages/blocks/src/feature-section/feature-velocity.tsx",
      "content": "'use client'\r\nimport { cn } from '@/lib/utils'\r\nimport { Brain, Database, Palette } from 'lucide-react'\r\n\r\nexport const FeatureVelocity = () => {\r\n  return (\r\n    <section className=\"bg-black py-32 px-6 min-h-screen font-dmSans relative\">\r\n      <div className=\"absolute inset-0 bg-[repeating-linear-gradient(45deg,#252525_0px_1px,transparent_1px_8px)] mask-[radial-gradient(ellipse_80%_50%_at_50%_0%,#000_70%,transparent_110%)]\"></div>\r\n      <div className=\"max-w-7xl mx-auto space-y-24 relative z-2\">\r\n        <div className=\"flex flex-col md:flex-row md:items-end justify-between gap-12 border-b border-neutral-800 pb-12\">\r\n          <div className=\"space-y-6\">\r\n            <h2 className=\"text-5xl md:text-7xl font-black text-white tracking-tighter uppercase leading-none\">\r\n              High Velocity\r\n              <br />\r\n              Distribution.\r\n            </h2>\r\n          </div>\r\n          <p className=\"max-w-xs text-gray-500 font-mono text-sm leading-relaxed uppercase tracking-widest\">\r\n            Architecture designed for maximum influence and sustainable growth.\r\n          </p>\r\n        </div>\r\n        <div className=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8\">\r\n          {[\r\n            {\r\n              title: 'Neural Link',\r\n              label: 'Algorithm Optimization',\r\n              color: 'from-violet-500/20',\r\n              icon: Brain,\r\n            },\r\n            {\r\n              title: 'Data Core',\r\n              label: 'Predictive Analytics',\r\n              color: 'from-emerald-500/20',\r\n              icon: Database,\r\n            },\r\n            {\r\n              title: 'Fluid UI',\r\n              label: 'Experience Design',\r\n              color: 'from-blue-500/20',\r\n              icon: Palette,\r\n            },\r\n          ].map((card, i) => (\r\n            <div\r\n              key={i}\r\n              className=\"group relative bg-neutral-950 border border-neutral-800 rounded-2xl p-12 overflow-hidden hover:border-neutral-950 transition-all duration-500\"\r\n            >\r\n              <div\r\n                className={cn(\r\n                  'absolute inset-0 bg-linear-to-br to-transparent opacity-0 group-hover:opacity-100 transition-opacity duration-700',\r\n                  card.color\r\n                )}\r\n              />\r\n              <div className=\"relative z-10 space-y-16\">\r\n                <div className=\"size-14 rounded-2xl bg-white/10 flex items-center justify-center\">\r\n                  <card.icon className=\"size-6 text-white\" />\r\n                </div>\r\n                <div className=\"space-y-4\">\r\n                  <span className=\"text-[10px] font-mono text-gray-500 uppercase tracking-[0.3em]\">\r\n                    {card.label}\r\n                  </span>\r\n                  <h3 className=\"text-3xl font-black text-white uppercase tracking-tighter\">\r\n                    {card.title}\r\n                  </h3>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          ))}\r\n        </div>\r\n      </div>\r\n    </section>\r\n  )\r\n}\r\n",
      "type": "registry:block"
    },
    {
      "path": "./components/ui/timeline-animation.tsx",
      "content": "import type { Variants } from 'motion/react';\nimport { type HTMLMotionProps, motion, useInView } from 'motion/react';\nimport type React from 'react';\n\ntype TimelineContentProps<T extends keyof HTMLElementTagNameMap> = {\n  children?: React.ReactNode;\n  animationNum: number;\n  className?: string;\n  timelineRef: React.RefObject<HTMLElement | null>;\n  as?: T;\n  customVariants?: Variants;\n  once?: boolean;\n} & HTMLMotionProps<T>;\n\nexport const TimelineAnimation = <T extends keyof HTMLElementTagNameMap = 'div'>({\n  children,\n  animationNum,\n  timelineRef,\n  className,\n  as,\n  customVariants,\n  once = true,\n  ...props\n}: TimelineContentProps<T>) => {\n  const defaultSequenceVariants = {\n    visible: (i: number) => ({\n      filter: 'blur(0px)',\n      y: 0,\n      opacity: 1,\n      transition: {\n        delay: i * 0.5,\n        duration: 0.5,\n      },\n    }),\n    hidden: {\n      filter: 'blur(20px)',\n      y: 0,\n      opacity: 0,\n    },\n  };\n\n  const sequenceVariants = customVariants || defaultSequenceVariants;\n\n  const isInView = useInView(timelineRef, {\n    once,\n  });\n\n  const MotionComponent = motion[as || 'div'] as React.ElementType;\n\n  return (\n    <MotionComponent\n      initial='hidden'\n      animate={isInView ? 'visible' : 'hidden'}\n      custom={animationNum}\n      variants={sequenceVariants}\n      className={className}\n      {...props}\n    >\n      {children}\n    </MotionComponent>\n  );\n};\n",
      "type": "registry:component"
    }
  ],
  "type": "registry:block"
}