{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "demo-primitives-effects-particles",
  "title": "Particles Demo",
  "description": "Demo showing an animated particles.",
  "registryDependencies": [
    "@animate-ui/primitives-effects-particles"
  ],
  "files": [
    {
      "path": "registry/demo/primitives/effects/particles/index.tsx",
      "content": "import {\n  Particles,\n  ParticlesEffect,\n  type ParticlesEffectProps,\n} from '@/components/animate-ui/primitives/effects/particles';\nimport { useState } from 'react';\n\nexport function ParticlesDemo(props: ParticlesEffectProps) {\n  const [key, setKey] = useState(0);\n\n  return (\n    <Particles key={key}>\n      <button\n        className=\"px-4 py-2 bg-accent\"\n        onClick={() => setKey((k) => k + 1)}\n      >\n        Particles\n      </button>\n      <ParticlesEffect className=\"bg-primary size-1 rounded-full\" {...props} />\n    </Particles>\n  );\n}\n",
      "type": "registry:ui",
      "target": "components/animate-ui/demo/primitives/effects/particles.tsx"
    }
  ],
  "meta": {
    "demoProps": {
      "ParticlesEffect": {
        "side": {
          "value": "top",
          "options": {
            "top": "top",
            "bottom": "bottom",
            "left": "left",
            "right": "right"
          }
        },
        "sideOffset": {
          "value": 0,
          "min": 0,
          "max": 50,
          "step": 1
        },
        "align": {
          "value": "center",
          "options": {
            "start": "start",
            "center": "center",
            "end": "end"
          }
        },
        "alignOffset": {
          "value": 0,
          "min": -50,
          "max": 50,
          "step": 1
        },
        "count": {
          "value": 6,
          "min": 1,
          "max": 30,
          "step": 1
        },
        "radius": {
          "value": 30,
          "min": 10,
          "max": 100,
          "step": 1
        },
        "spread": {
          "value": 360,
          "min": 0,
          "max": 1000,
          "step": 1
        },
        "duration": {
          "value": 0.8,
          "min": 0.1,
          "max": 2,
          "step": 0.1
        },
        "holdDelay": {
          "value": 0.05,
          "min": 0,
          "max": 0.2,
          "step": 0.01
        },
        "delay": {
          "value": 0,
          "min": 0,
          "max": 3000,
          "step": 100
        }
      }
    }
  },
  "type": "registry:ui"
}