embed.js injects the round launcher (bottom-left). Click opens a compact chat panel (about 384×520px) sitting just above the button—traditional widget style. The panel loads widget.html inside an iframe. Same idea as src/components/ChatbotWidget.jsx, implemented in Hostin embed.js so you do not need to ship the CRA bundle for the paste-in snippet.
Open widget.html alone for the standalone full-page chat (no launcher).
widget.html on branch Hosting. If the snippet sits inside Elementor HTML (mid-page), the iframe is inlined there automatically so the column isn’t empty. Footer / global use still gets the FAB. Optional: data-inline, data-height="680", or data-fab to force a mode.
After the embed loads:
loadChatbotBranch, toggleChatbotBranch, removeChatbotBranch
Open the chat panel without clicking the FAB, or remove the launcher:
The widget is configured to use the following API endpoint:
To change the API endpoint, edit the API_CONFIG.endpoint in the widget.html file.
Your widget consists of these files:
widget.html (also deployed from this repo)Deploy these files to any static hosting service: