Banduro is a chatbot management platform which allows non-technical users to create their own chatbots and deploy them on their business webpage. In order to make the deployment process as painless as possible for the users of Banduro, I designed an "injection" process, which allows a chatbot to be dynamically loaded into an iframe in the user's website. To make this work, the user simply needs to copy and paste two <script> elements to the webpage where the chatbot would run: one <script> with the ID of the chatbot, and another <script> with the logic to load that particular chatbot (linked above). The business webpage and the iframe communicate through the window.postMessage API, which allows each to know 1) when the chatbot iframe DOM element has loaded, 2) when the chatbot data model has been injected into the iframe, and 3) when the user opens or closes the chatbot.