Appearance
Plugin examples
These examples show two supported ways to build a standalone Icon Visualizer plugin. Both depend only on @iconfigurators/plugin-sdk, bundle as classic browser scripts, and register before the embed starts.
Dealer experience
The dealer experience example is the primary reference implementation. It uses native browser APIs and demonstrates:
- Typed deployment options
- Brand transformation and badges
- Event forwarding to the host page
- A dealer-help banner and modal
- A custom vehicle landing section
- Plugin styles and complete cleanup
Choose this approach for most plugins, especially when their UI consists of badges, buttons, promotional cards, or a small workflow.
Lit promotion
The Lit promotion example demonstrates declarative, stateful plugin UI. It bundles lit-html inside the plugin artifact; Icon Visualizer does not provide or depend on that renderer.
Choose this approach when a plugin owns enough dynamic UI to benefit from declarative rendering.
Compare the approaches
| Approach | Additional dependency | Rendering model | Best for |
|---|---|---|---|
| Native browser APIs | None | DOM and template operations | Most badges, actions, and small UI |
| Bundled renderer | Plugin-owned | Declarative rendering | Larger, stateful plugin-owned surfaces |
Both approaches must return cleanup, use only documented public capabilities, and produce a standalone artifact that can load before embed.cfm.