Knowledge Base Article
There are three ways to build a custom widget that can be added to PageBuilder.
The first is the one documented here, which is the simple HTML widget that you can create from the UI. This enables folks to use the RTE to create text based announcements, images, embedded videos, bullet lists, links to content, external links, etc. The restrictions are similar to what you can do in content with the RTE / HTML mode. This can leverage the new link previews feature for richer HTML previews for over 700+ sites.
The next option, if you have web dev skills, is to use the SDK to create a Handlebars component. Handlebars is a template language similar to Freemarker that we use for email templates and more complex web components. Handlebars supports full HTML, script tags, GraphQL API queries, custom css, etc.
The final option is a much more advanced option to build and compile custom react components. This will enable you to build components in react and leverage our library of shared react components to make it easier to render forms, trigger modals, generate lists of content, users, etc. This will be the preferred method for build more advanced integrations or dynamic web views.
Once a widget is developed, it appears in the list of components in page builder, so you can easily add / move / remove and even configure parameters for the widget via the configuration tools just like OOTB widgets.
HTML and Handlebar components are available now. The react components are in development and planned for delivery in Q1.