Check out Velcro for more information.
// Load the runtime
var V={},velcro=(()=>{V.V='Velcro' in window?Promise.resolve(Velcro):new Promise(resolve=>{V.S=document.createElement('script');V.S.src='https://unpkg.com/@velcro/[email protected]';V.S.onload=()=>resolve(Velcro);document.head.appendChild(V.S);});V.R=V.V.then(v=>v.createRuntime());return s=>V.R.then(r=>r.import(s))})();
// Render a simple React element to document.body
var React = await velcro('react'), ReactDOM = await velcro('react-dom'); ReactDOM.render(React.createElement('h1', null, 'Hello Velcro'), document.body);