Merge pull request #22429 from Hyperkid123/bep-0002-dynamic-frontend-experiments
bep: 0002 add module federation build tooling experiment
This commit is contained in:
@@ -330,6 +330,7 @@ Rollbar
|
||||
Rollup
|
||||
routable
|
||||
Routable
|
||||
Rspack
|
||||
rst
|
||||
rsync
|
||||
ruleset
|
||||
|
||||
@@ -143,10 +143,16 @@ Plugin discovery is a pre-requisite for Plugin registry. This should be responsi
|
||||
|
||||
### Module federation implementation experiments
|
||||
|
||||
> NOTE Share outcome of testing mixing multiple tools for module federation.
|
||||
|
||||
Test should consist of trying to run permutations of webpack/Rspack/vite based shell apps/plugins and discover if we can freely choose any tool, or if we should restrict the tooling to just a subset of the available options.
|
||||
|
||||
The outcome of initial testing is positive and it is possible to mix and match different build tools and consume different remote modules in a single shell application.
|
||||
|
||||
The experimental code can be found in [this repository](https://github.com/scalprum/mf-mixing-experiments).
|
||||
|
||||
**The testing so far was done only on very simple modules**. Although core React features are working (Context API and hooks), more testings needs to be done in order to declare this approach 100% reliable.
|
||||
|
||||
So far a lot of custom code needs to be written to bridge Webpack, Rspack, @module-federation/enhanced with Vite. The first three are compatible out of the box, but Vite requires extra bridge to be able to consume/provide modules with/to other builds.
|
||||
|
||||
### Plugin manifest
|
||||
|
||||
Each plugin should have a manifest file with important metadata. This metadata is used to load the remote assets to browser. The plugin manifest should be part of a build output.
|
||||
|
||||
Reference in New Issue
Block a user