What You Can Do
- Drop in any web component that follows the standard custom-element pattern
- Configure custom inputs (attributes) for your component using the schema input editor
- Copy and paste a Web Component block to other pages
- Copy an AI prompt — a built-in utility that generates a ready-to-use prompt (with your configured inputs) so you can offload web component creation to an LLM
Defining a Web Component
A Web Component block is a JavaScript class that extendsHTMLElement. Use observedAttributes to declare the inputs you want to expose, and re-render when they change:
observedAttributes can be wired up as a configurable input through the schema input editor, so non-technical authors can edit your component’s content from the property panel just like any built-in block.
Use Cases
- Bespoke visualizations — render a chart, gauge, or diagram tailored to your data
- Embedded widgets — calculators, sliders, or interactive elements not covered by built-in blocks
- Brand-specific UI — components that match a design system exactly
Current Limitations
This is a minimal, complete implementation of custom web component support. The following are not yet supported and are planned for future releases:$refnested block support- Persisting Web Component blocks in the block palette
- AI assistant integration
Next Steps
Live Page Builder
Back to the visual builder overview
Page Templates
Save pages with your custom blocks as templates

