I'm developing a Electron/React app which uses Webpack and Asar technologies. It's designed to be a host app providing a common platform for some plugins. These plugins are downloaded and plugged into the host app by users at runtime. Each "plugin" may have code to run in the main process (i.e. full Node.js access) and in the renderer process (React components for its UI).
What's the best architecture / design pattern to engineer my "host app" and "plugins"? Similar to VSCode (which it's an Electron app and loads plugins at runtime).
Can I dynamically load an .asar
file? Can React.lazy()
help me?