{"success":true,"data":{"block":{"id":"hero-developer-tools-code","name":"Developer Tools Code Hero","title":"Hero Developer Tools Code","category":"Hero","categorySlug":"hero","description":"A hero for developer tools featuring a terminal/code preview. Shows CLI commands and developer-focused messaging.","thumbnail":{"desktop":"https://cdn.ing/assets/i/r/290393/3riw58rsbz72fmx33tpiqnljmfie/cleanshot-2026-02-18-at-13-36-30.png","mobile":"https://cdn.ing/assets/i/r/290392/eb2q1d6asc32f08lfzqp0690fg3e/cleanshot-2026-02-18-at-13-36-43.png"},"componentPath":"blocks/hero/hero-developer-tools-code.tsx","code":"import { HeroDeveloperToolsCode } from \"@opensite/ui/blocks/hero/hero-developer-tools-code\";\nimport { DynamicIcon } from \"@opensite/ui/components/dynamic-icon\";\n\nexport default function Demo() {\n  return (\n    <HeroDeveloperToolsCode\n      badgeText=\"For Developers\"\n      heading=\"Developer tools that just work\"\n      description=\"Build faster with modern APIs, comprehensive docs, and tools designed by developers, for developers.\"\n      actions={[\n        {\n          label: \"Read Docs\",\n          href: \"#\",\n          variant: \"default\",\n          iconAfter: <DynamicIcon name=\"lucide/arrow-right\" size={16} />,\n        },\n        {\n          label: \"View GitHub\",\n          href: \"#\",\n          variant: \"outline\",\n          icon: <DynamicIcon name=\"lucide/github\" size={16} />,\n        },\n      ]}\n      terminalTitle=\"quickstart.tsx\"\n      terminalLines={[\n        {\n          text: \"import { Hero } from '@opensite/ui';\",\n          colorClass: \"text-blue-400\",\n        },\n        { text: \"\", colorClass: \"\" },\n        {\n          text: \"export default function Page() {\",\n          colorClass: \"text-purple-400\",\n        },\n        {\n          text: '  return <Hero heading=\"Hello World\" />;',\n          colorClass: \"text-green-400\",\n        },\n        { text: \"}\", colorClass: \"text-purple-400\" },\n      ]}\n      spacing=\"xl\"\n      background=\"dark\"\n      pattern=\"gridFadeTop\"\n      patternOpacity={0.25}\n    />\n  );\n}","propsSchema":{"badgeText":{"type":"object","description":"Badge text content","typeLabel":"React.ReactNode","required":false},"badgeIcon":{"type":"string","description":"Badge icon name","required":false},"badgeSlot":{"type":"object","description":"Custom slot for badge (overrides badge props)","typeLabel":"React.ReactNode","required":false},"heading":{"type":"object","description":"Main heading content","typeLabel":"React.ReactNode","required":true,"maxLength":40},"description":{"type":"object","description":"Description text below heading","typeLabel":"React.ReactNode","required":false,"maxLength":130},"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,"maxItems":2,"pinnedValues":{"0.variant":"default","1.variant":"outline"}},"actionsSlot":{"type":"object","description":"Custom slot for rendering actions (overrides actions array)","typeLabel":"React.ReactNode","required":false},"terminalTitle":{"type":"string","description":"Terminal window title","required":false},"terminalLines":{"type":"array","description":"Array of terminal output lines","items":{"type":"object","description":"","fields":{"text":{"type":"string","description":"Text content of the line","required":true},"colorClass":{"type":"string","description":"Color class for the line","required":false},"prefix":{"type":"string","description":"Prefix text (e.g., \"info\", \"success\")","required":false},"prefixColorClass":{"type":"string","description":"Color class for the prefix","required":false}},"typeLabel":"TerminalLine"},"typeLabel":"TerminalLine[]","required":false,"minItems":2,"maxItems":10},"terminalSlot":{"type":"object","description":"Custom slot for terminal content (overrides terminalLines)","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 column","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},"terminalClassName":{"type":"string","description":"Additional CSS classes for the terminal container","required":false},"patternClassName":{"type":"string","description":"Additional CSS classes for the pattern overlay","required":false},"logo":{"type":"object","description":"Brand logo configuration. LOGO MEDIA ONLY — do not use photos or hero images.","fields":{"url":{"type":"string","description":"URL to navigate to when logo is clicked","required":false},"src":{"type":"string","description":"Image source for the logo","required":false},"alt":{"type":"string","description":"Alt text for the logo image","required":false},"title":{"type":"object","description":"Text title to display (alternative to image)","typeLabel":"React.ReactNode","required":false},"className":{"type":"string","description":"Additional CSS classes for the logo","required":false}},"typeLabel":"LogoConfig","required":false},"logoSlot":{"type":"object","description":"Custom slot for logo (overrides logo prop)","typeLabel":"React.ReactNode","required":false},"logoClassName":{"type":"string","description":"Additional CSS classes for the logo container","required":false},"sectionId":{"type":"string","description":"Optional Section ID","required":false}},"exampleProps":{"logo":{"src":"https://cdn.ing/assets/i/r/287634/e4cmvu8nbwoqy2qer90t4gpap0ed/logo-light.png","alt":"Brand Logo"},"badgeText":"For Developers","heading":"Developer tools that just work","description":"Build faster with modern APIs and comprehensive docs.","terminalTitle":"quickstart.tsx","terminalLines":[{"text":"import { Hero } from '@opensite/ui';","colorClass":"text-blue-400"},{"text":"export default function Page() {","colorClass":"text-purple-400"},{"text":"  return <Hero heading='Hello World' />;","colorClass":"text-green-400"},{"text":"}","colorClass":"text-purple-400"}],"background":"dark","actions":[{"label":"Read Docs","href":"#","variant":"default"},{"label":"View GitHub","href":"#","variant":"outline"}]},"dependencies":["@opensite/ui"],"tags":["hero","developer","tools","code","terminal","cli","programming","technical"],"performance":{},"importantUsageNotes":"Do not exceed 40 characters for 'heading'. Do not exceed 130 characters for 'description'. Customize 'terminalLines' with real code relevant to the product. If you supply multiple 'actions', use 'default' for the first and 'outline' for the second. This is a code/text hero — no images required.","usageRequirements":{"requiredProps":["heading"],"propConstraints":{"heading":{"required":true,"maxLength":40},"description":{"maxLength":130},"actions":{"maxItems":2,"pinnedValues":{"0.variant":"default","1.variant":"outline"}},"terminalLines":{"minItems":2,"maxItems":10}},"mediaSlots":{}}}},"timestamp":"2026-06-27T19:52:16.144Z"}