Dependency free js async script loader for browsers maintained by @Filestack
npm install @filestack/loader To load async modules just call method loadModule
import { loadModule } from '@filestack/loader'; loadModule('module-id', 'url/to/b.js').then((b) => { b.helloWorld(); });You can register some metadata after module will be loaded with register module import { registerModule } from '@filestack/loader'; const api = { helloWorld() { console.log('Hello world!'); }, }; // Module need to "tell" the loader that it's loaded and ready. registerModule('module-id', api, { version: 123 });import { loadCss } from '@filestack/loader'; loadCss('url/to/style.css').then(() => { console.log('Style loaded!'); });npm install npm test This command opens in the browser semi-manual tests. Those tests don't have watch, so you need to refire the command with each change.