Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Micro Frontends Unmasked Opportunities, Challen...

Micro Frontends Unmasked Opportunities, Challenges, Alternatives

Avatar for Manfred Steyer

Manfred Steyer

November 13, 2024
Tweet

More Decks by Manfred Steyer

Other Decks in Programming

Transcript

  1. Verticals: Basis for Autonomous Teams Minimal Dependencies Vertical 1 Vertical

    2 Vertical 3 Feature Feature Feature Feature Feature Feature Feature Feature Feature
  2. Opportunities Team Autonomy Adding new Teams & Members Shorter Release

    Cycles Testability Fault Isolation Runtime Performance Different Technology Stacks
  3. @ManfredSteyer About me… Manfred Steyer, ANGULARarchitects.io (Remote) Angular Workshops and

    Consulting Google Developer Expert for Angular Blog, Books, Articles, and Talks about Angular Manfred Steyer
  4. @ManfredSteyer Module Federation Shell (Host) Microfrontend (Remote) // Maps Urls

    in // webpack config remotes: { mfe1: "http://..." } // Expose files in // webpack config exposes: { Cmp: './my.cmp.ts' } import('mfe1/Cmp')
  5. @ManfredSteyer Dynamic Module Federation Shell (Host) Microfrontend (Remote) remotes: {

    } exposes: { Cmp: './my.cmp.ts' } loadRemoteModule({ type: 'module', remoteEntry: 'http://…', exposedModule: './Cmp' })
  6. @ManfredSteyer How to Get the Microfrontend's URL? Shell (Host) Microfrontend

    (Remote) RemoteEntrypoint.js import('…'); <script src="…"></script>
  7. @ManfredSteyer How to Share Libs? Shell (Host) Microfrontend (Remote) shared:

    [ "@angular/core", "…" ] shared: [ "@angular/core", "…" ]
  8. @ManfredSteyer However, … Many of these Strategies make sense even

    without Micro Frontends! Strategic Design (DDD) Design Systems Starterkits and Libs Getting Dev Feedback …
  9. @ManfredSteyer Verticals in a Modulith Minimal Dependencies Vertical 1 Vertical

    2 Vertical 3 Feature Feature Feature Feature Feature Feature Feature Feature Feature
  10. @ManfredSteyer Conclusion It's all about Verticals! Strategic Design (DDD) Challenges

    & Solutions Platform Team Alternative: Modulith You need to evaluate!