Micro Frontends Architecture is micro service approach for Frontend development. Micro Frontends thinks web-app as a composition of features which are owned by independent teams. Each team has a distinct area of business or mission it cares about and specialises in it. A team is cross functional and develops its features end-to-end, from database to user interface and take care of CI/CD. Micro service architechure is well know concept for backend point of view but In frontend we need to follow diffrent type of design pattern to achieve this.
Key Take away:
1. Learn about Micro Frontend
2. How to practically use them
3. Key challenges
2. 2CONFIDENTIAL
About Me
› Works at Guavus as a Lead Technology
› 8+ years of industry experience in different roles
› Like to explore and work on new technologies
› Expertise in Frontend development with different technologies
3. 3CONFIDENTIAL
Agenda
› Evolution of WebApps
› Frontend Architecture
› Micro Frontends
› Case study
› Challenges of Micro Frontends
› Key Take Away
7. 7CONFIDENTIAL
Serve side render
› HTML File in server
› Display in Browser
› Slow page
rendering
› Static sites
WordPress
› Non-rich site
interactions
9. 9CONFIDENTIAL
Client side render
› Rendering using
JavaScript.
› Rich site interactions
› Robust selection of
JavaScript libraries
› Great for web
applications
19. 19CONFIDENTIAL
Micro Frontend Architecture
› Inspired By Micro
service
Architecture
› Microservices are
loosely coupled
independent
services
› Micro Frontends
are web
components or
sub-modules
29. 29CONFIDENTIAL
Communication between Web Components
› The DOM specification of particular element (tag-name, attributes & events)
acts as the contract or public API
30. 30CONFIDENTIAL
Build and Publish as Module
Build the micro frontend application to reusable module/packaged as similar to any
Angular modules.
› Build
› Packaging
› Publish
32. 32CONFIDENTIAL
What did we achieve?
› Each micro app is ready to run stand alone
› Main is integrated with Web components
› Main app and micro apps can be deployed and published stand alone
33. 33CONFIDENTIAL
Another Ways
› Create Single-SPA with multiple frameworks like React,Vuejs
› Multiple single-page apps that live at different URLs.
› Custom Elements + Server Side Includes using SSI/ESI
› Use IFrames using libraries and Window.postMessage APIs to coordinate