{"success":true,"data":{"block":{"id":"hero-design-system-3d","name":"Design System 3D Hero","title":"Hero Design System 3D","category":"Hero","categorySlug":"hero","description":"A hero showcasing design systems with 3D perspective images. Modern and innovative design for design tool products.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/290350/g2n65xer8r53i9v5hkc16s2o9kyt/cleanshot-2026-02-18-at-09-03-19.png","mobile":"https://cdn.ing/assets/i/r/290349/jor599pzgxbhmrl6ol9aubpjsded/cleanshot-2026-02-18-at-09-03-34.png"},"componentPath":"blocks/hero/hero-design-system-3d.tsx","code":"import { imagePlaceholders } from \"@/lib/media\";\nimport { HeroDesignSystem3d } from \"@opensite/ui/blocks/hero/hero-design-system-3d\";\nimport { DynamicIcon } from \"@opensite/ui/components/dynamic-icon\";\n\nexport default function Demo() {\n  return (\n    <HeroDesignSystem3d\n      trustBadge=\"Design System\"\n      heading=\"Build with a comprehensive design system\"\n      description=\"Create consistent, beautiful interfaces with our complete set of components, patterns, and guidelines. Built for scale and flexibility.\"\n      actions={[\n        {\n          label: \"Explore Components\",\n          href: \"#\",\n          variant: \"default\",\n          iconAfter: <DynamicIcon name=\"lucide/arrow-right\" size={16} />,\n        },\n        {\n          label: \"Documentation\",\n          href: \"#\",\n          variant: \"outline\",\n          icon: <DynamicIcon name=\"lucide/book-open\" size={16} />,\n        },\n      ]}\n      images={[\n        { src: imagePlaceholders[100], alt: \"Design system component 1\" },\n        { src: imagePlaceholders[101], alt: \"Design system component 2\" },\n        { src: imagePlaceholders[102], alt: \"Design system component 3\" },\n      ]}\n      background=\"dark\"\n    />\n  );\n}","propsSchema":{"trustBadge":{"type":"object","description":"Trust badge text","typeLabel":"React.ReactNode","required":false},"trustBadgeSlot":{"type":"object","description":"Custom slot for trust badge (overrides trustBadge prop)","typeLabel":"React.ReactNode","required":false},"heading":{"type":"object","description":"Main heading content","typeLabel":"React.ReactNode","required":false},"description":{"type":"object","description":"Description text below heading","typeLabel":"React.ReactNode","required":false},"actions":{"type":"array","description":"Array of action configurations for CTA buttons","items":{"type":"object","description":"","fields":{"variant":{"type":"string","description":"","typeLabel":"\"default\" | \"destructive\" | \"outline\" | \"secondary\" | \"ghost\" | \"link\"","required":false},"size":{"type":"string","description":"","typeLabel":"\"default\" | \"sm\" | \"md\" | \"lg\" | \"icon\" | \"icon-sm\" | \"icon-lg\"","required":false},"label":{"type":"object","description":"Button/link label text or ReactNode","typeLabel":"ReactNode","required":false},"icon":{"type":"object","description":"Icon to display (typically before label)","typeLabel":"ReactNode","required":false},"iconAfter":{"type":"object","description":"Icon to display after the label","typeLabel":"ReactNode","required":false},"href":{"type":"string","description":"URL for link behavior","required":false},"onClick":{"type":"object","description":"Click handler for button behavior","typeLabel":"MouseEventHandler","required":false},"className":{"type":"string","description":"Additional CSS classes for the action","required":false},"children":{"type":"object","description":"Custom children (overrides label + icon rendering)","typeLabel":"ReactNode","required":false},"aria-label":{"type":"string","description":"ARIA label for accessibility","required":false},"asButton":{"type":"boolean","description":"Render as a button element instead of an anchor/link","required":false}},"typeLabel":"ActionConfig"},"typeLabel":"ActionConfig[]","required":false},"actionsSlot":{"type":"object","description":"Custom slot for rendering actions (overrides actions array)","typeLabel":"React.ReactNode","required":false},"logoMarkSrc":{"type":"string","description":"Logo mark image for preview button","required":false},"images":{"type":"array","description":"Array of 3D stacked images (expects 3 images)","items":{"type":"object","description":"","fields":{"src":{"type":"string","description":"Image source URL","required":true},"alt":{"type":"string","description":"Alt text for accessibility","required":true},"href":{"type":"string","description":"Optional link URL","required":false},"className":{"type":"string","description":"Additional CSS classes for the image","required":false}},"typeLabel":"ImageItem"},"typeLabel":"ImageItem[]","required":false},"imagesSlot":{"type":"object","description":"Custom slot for images (overrides images array)","typeLabel":"React.ReactNode","required":false},"background":{"type":"string","description":"Background style for the section","typeLabel":"SectionBackground","required":false},"spacing":{"type":"object","description":"Vertical spacing for the section","fields":{},"typeLabel":"SectionSpacing","required":false},"pattern":{"type":"object","description":"Optional background pattern name","fields":{},"typeLabel":"PatternName","required":false},"patternOpacity":{"type":"number","description":"Pattern overlay opacity (0-1)","required":false},"className":{"type":"string","description":"Additional CSS classes for the section","required":false},"containerClassName":{"type":"string","description":"Additional CSS classes for the container","required":false},"contentClassName":{"type":"string","description":"Additional CSS classes for the content area","required":false},"headingClassName":{"type":"string","description":"Additional CSS classes for the heading","required":false},"descriptionClassName":{"type":"string","description":"Additional CSS classes for the description","required":false},"actionsClassName":{"type":"string","description":"Additional CSS classes for the actions container","required":false},"imagesClassName":{"type":"string","description":"Additional CSS classes for the images container","required":false},"optixFlowConfig":{"type":"object","description":"OptixFlow image optimization configuration","fields":{"apiKey":{"type":"string","description":"API key for OptixFlow service","required":true},"compression":{"type":"number","description":"Compression level (0-100)","required":false}},"typeLabel":"OptixFlowConfig","required":false},"sectionId":{"type":"string","description":"Optional Section ID","required":false}},"defaultProps":{},"dependencies":["@opensite/ui"],"tags":["hero","design-system","3d","perspective","modern","innovative","tools","creative"],"performance":{},"importantUsageNotes":"Only use for client websites that have an ultra modern UI since this implements skewed elements that will not work for traditional UI designs. Supply exactly 3 images to the 'images' prop. Do not exceed 20 characters for the 'trustBadge' prop. Do not exceed 40 characters for the 'heading' prop. Do not exceed 130 characters for the 'description' prop. Follow the example props closely for this block. If you supply multiple 'actions', ensure to use a variant of 'default' for the first action, and 'outline' for the second action to ensure proper visual distinction between the two CTAs. Follow the example props closely for this block."}},"timestamp":"2026-05-13T10:42:11.425Z"}