{
  "$schema": "https://www.cooki-ui.design/schema/registry-item.json",
  "name": "blur-reveal",
  "type": "registry:ui",
  "title": "Atmospheric Gaussian Blur Reveal",
  "description": "Smooth transition from heavy Gaussian blur to crisp legibility.",
  "category": "text",
  "dependencies": [
    "framer-motion"
  ],
  "devDependencies": [],
  "registryDependencies": [],
  "tags": [
    "text",
    "blur",
    "reveal",
    "fade"
  ],
  "files": [
    {
      "path": "registry/text/blur-reveal/blur-reveal.tsx",
      "type": "registry:ui",
      "target": "components/ui/blur-reveal.tsx",
      "content": "import React from 'react'\nimport { motion } from 'framer-motion'\nimport { cn } from '@/lib/utils'\n\nexport interface BlurRevealProps {\n  children?: React.ReactNode\n  delay?: number\n  duration?: number\n  className?: string\n}\n\nexport const BlurReveal: React.FC<BlurRevealProps> = ({\n  children = 'Hermetic Bit-Reproducible Kernel Verification',\n  delay = 0,\n  duration = 0.8,\n  className,\n}) => {\n  return (\n    <motion.div\n      initial={{ opacity: 0, filter: 'blur(12px)', y: 15 }}\n      whileInView={{ opacity: 1, filter: 'blur(0px)', y: 0 }}\n      viewport={{ once: false }}\n      transition={{\n        duration,\n        delay,\n        ease: [0.25, 0.46, 0.45, 0.94],\n      }}\n      className={cn('text-zinc-200', className)}\n    >\n      {children}\n    </motion.div>\n  )\n}\n"
    }
  ],
  "tailwind": {
    "required": true
  },
  "framework": [
    "react",
    "nextjs",
    "vite"
  ]
}