In recent years web applications have drastically grown in size. Nowadays multiple teams and developers are working on the frontend alone. Quite often, this leads to communication and alignment issues together with longer times to market. A fresh alternative is the pattern of micro frontends. In this architecture paradigm, multiple teams can work on a large application independently.
This workshop covers the whole life cycle of micro frontends – from the initial architecture decisions to maintenance. Importantly, our main goal is to create loosely coupled micro frontends which can be scaled indefinitely. Our main focus points will be developer experience and reliability.
In this workshop you'll learn how micro frontend applications can be designed and implemented. You'll see what possible directions can be taken and where additional attention to detail is required. At the end of the workshop, you'll have built your own micro frontend solution and obtained first-hand experience in doing a proper domain decomposition to identify suitable micro frontends. You'll have a fundamental understanding of essential tools including modern frameworks and tools to create and orchestrate micro frontends.
Block 1: Architecture Overview - Focus on Client-Side Composition (1 hour)
1. Web Approach and Server-Side Composition
2. Client-Side Composition
3. SPA Composition and Siteless UIs
Block 2: Tooling for SPA Micro Frontends (2.5 hours)
1. Web Components [Exercise]
2. Single SPA with Importmaps / SystemJS [Exercise]
3. Module Federation [Exercise]
Block 3: Dependency Sharing (1.5 hours)
1. Theoretical Background
2. Centralized Sharing
3. Distributed Sharing with Module Federation [Exercise]
Block 4: MF Discoverability (1 hour)
1. Scalability Concerns
2. Feed Service
Solution Architect @smapiot, Microsoft MVP
Dr. Florian Rappl works as a solution architect for smapiot, where he is busy scaling and leading innovative teams to create distributed web applications. He is the author of "The Art of Micro Frontends". In his free time he likes to contribute to open-source projects. Florian is a Microsoft MVP in the area of development tools.