Sitemap
1 min readJul 7, 2020

When it comes to shipping incremental code, if you’re unsure or do not have strong enough CI/CD patterns in place to take on evergreen code. Managed and versioned remotes is a safe alternative. This would allow one to remotely who consumes what version of what remote on whichever host. Like a runtime lockfile.

Module Federation gives us a ton of power, and we have done our best to mitigate as much as possible. But a poorly maintained or poorly architected codebase will suffer.

Versioned remotes do a good job as locking down possible breaking changes. I’d also reccomend state level data contracts between larger components. Avoid federated code reading directly from application state, but rather exposing/consuming a small api module that brokers application state to and from federated modules. That way you can test against the data contract.

If you want to go real deep, module federation works with unit tests as well, at that stage though. I’d recommend something like the federation dashboard to help see whats going on in a larger application

--

Zack Jackson
Zack Jackson

Written by Zack Jackson

Infra Architect @ ByteDance. Creator of Module Federation. Specializing in Bundler and Javascript Orchestration at scale.