SlideShare a Scribd company logo
Micro Frontends
a microservice approach to frontend web development
O.P. Pachoriya, Deepika Chouhan, Sanny Kumar
2
Micro
Frontend
What ?
Who ?
Why ?
When
?
How ?
Demo
What is the need of hour ???
• Modern Web Application
• Multiple Team
• Ship features Independently
• Good Frontend
• Scaling
• Speed of Development
• Availability
• Loosely coupled & Testable Code
3
Micro Services
4
What is Micro frontend ?
• Micro frontends are distinct vertical
slices of a web application that
encompass the frontend, backend
service, and database.
• Extension of micro service architecture
to frontend
•
5
Who is using Micro frontend ?
6
Who is using Micro frontend ?
7
• Approaches taken by these companies are certainly different
• Intentions are mostly the same
• And list is growing every day
Growth of Micro frontend
8
Brief History of App development
9
Monolithic full stack app
Frontend backend
Micro services
Component libraries / framework
Micro frontend
Brief History of App development
10
Why to use Micro frontend ?
• Modular & Loosely coupled
• Faster development & Increased productivity
• Individual deployment
• Granular Scaling
• Fault Isolation
• Flexibility / Technology and framework agnostic
• Evolutionary
• Reusability
11
When to use Micro frontend ?
• Huge code base where different teams are contributing
• Code ownership get messy
• Deployment is delayed because of other part of the application
• You like to use different Front End frameworks
12
Case Studies
Walmart.com
• Problems
• Large number of Product return
Emtec Digital
• Logistics Industry
• Problems
• Complex Arch & Code
• Difficult to Scale
• Limited choice of Tech
• Difficult to update, test
and maintain
13
https://www.youtube.com/watch?v=BcpDr0CcIxA
https://www.emtec.digital/think-hub/case-
studies/micro-frontends-third-party-logistics/
Before Choosing Micro frontend ?
• Team Size
• How components communicate with frameworks
• More than one way to divide your web components
• Just because you could use multiple client-side libraries and frameworks
doesn’t mean you should
14
Any Downside Micro frontend ?
15
Payload Size
Operational
and
governance
complexity
Environmen
t differences
How to implement Micro Frontends ?
(Popular Ways)
16
Iframes
Routing and
Loading Apps
Web
Component
Mono Repos
Framework
Libraries
Customized
Orchestration
How to implement Micro Frontends ?
(iFrame)
17
This kind of approach better suits the project where all the functionality
resides on the same page without any navigation and the communication
happens through the Window object.
How to implement Micro Frontends ?
(Routing and Loading Apps)
18
This kind of approach better suits the project where there is navigation
or routing involved and when the app is divided into multiple apps based
on the features.
How to implement Micro Frontends ?
(Web Components)
19
Combination of different technologies that allow you to create reusable
components. Promotes the DRY principle.
How to implement Micro Frontends ?
(Mono Repos)
20
Monorepo is a software strategy where you can put multiple related projects under one repo.
We don’t have to push shared code to separate repo as a library or module and pull it for use.
Every developer has to check out the whole repo even he just needs one or two folders.
How to implement Micro Frontends ?
(Framework Library)
21
Each library that can be pushed as a node module into some private repository. We have a shell app to pull
that repo where ever we need with lazy loading or dynamic imports.
Communication is not a problem here since all the individual libraries end up in the same project or application.
How to implement Micro Frontends ?
(Customized Orchestration)
22
We define plain Javascript files to orchestrate the entire workflow of these micro-projects. All
individual projects are deployed independently. The orchestrator can load each project based
on the URL.
These global objects are available for all the projects so that you can send data among
applications.
Implementation & Demo
23
Build Time Integration of Micro Frontends
as git dependency
24
Build Time Integration of Micro Frontends
as packages
25
Run Time Integration of Micro Frontends
Methods
• Iframes
• Javascript Functions
• Web Components
26
Iframes
27
• Implementation is easy
• Isolation from other part of application
• Hard to communicate with rest of app.
Javascript Functions
• Script is loaded when page loads and
attaches a function to window
• Based on route it determines which
window function to calls
• We pass element ref to function and it
renders respective DOM there
• Communication with rest of app easy
28
Web Components
• Script is loaded when page loads
and they define a custom element
• Based on route it determines which
web component elements to define
• Create an instance of element and
append it to specified element
• Outcome is same, method is
different
29
Implementation
30
Implementation
31
• Container
• Micro Frontends App
• Communication across App
• Shared Content
• Autonomous Development
Module Federation
32
Module federation allows a JavaScript application to
dynamically run code from another bundle/build, on
both client and server.
Module Federation includes:
1. name
2. library
3. filename
4. exposes
5. shared
33
Thank You. :)
34
Questions ??
35

More Related Content

What's hot

What's hot (20)

Introduction To Micro Frontends
Introduction To Micro Frontends Introduction To Micro Frontends
Introduction To Micro Frontends
 
"Micro-frontends, web development", Oleksandr Khivrych
"Micro-frontends, web development", Oleksandr Khivrych"Micro-frontends, web development", Oleksandr Khivrych
"Micro-frontends, web development", Oleksandr Khivrych
 
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJSMicro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
 
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019
 
Micro-Frontend Architecture
Micro-Frontend ArchitectureMicro-Frontend Architecture
Micro-Frontend Architecture
 
Micro Frontends Architecture - Jitendra kumawat (Guavus)
Micro Frontends Architecture - Jitendra kumawat (Guavus)Micro Frontends Architecture - Jitendra kumawat (Guavus)
Micro Frontends Architecture - Jitendra kumawat (Guavus)
 
State of Micro Frontend
State of Micro FrontendState of Micro Frontend
State of Micro Frontend
 
Micro frontend
Micro frontendMicro frontend
Micro frontend
 
Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...
Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...
Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...
 
Micro Frontends
Micro FrontendsMicro Frontends
Micro Frontends
 
Building applications in a Micro-frontends way
Building applications in a Micro-frontends wayBuilding applications in a Micro-frontends way
Building applications in a Micro-frontends way
 
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai..."Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
"Micro-frontends: Scalable and Modular Frontend in Parimatch Tech", Kyrylo Ai...
 
Mikrofrontend a Module Federation
Mikrofrontend a Module FederationMikrofrontend a Module Federation
Mikrofrontend a Module Federation
 
Microfrontends Monoreops & Trunkbased based
Microfrontends Monoreops & Trunkbased basedMicrofrontends Monoreops & Trunkbased based
Microfrontends Monoreops & Trunkbased based
 
"Micro-frontends from A to Z. How and Why we use Micro-frontends in Namecheap...
"Micro-frontends from A to Z. How and Why we use Micro-frontends in Namecheap..."Micro-frontends from A to Z. How and Why we use Micro-frontends in Namecheap...
"Micro-frontends from A to Z. How and Why we use Micro-frontends in Namecheap...
 
Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - Plansoft
 
Micro frontend: The microservices puzzle extended to frontend
Micro frontend: The microservices puzzle  extended to frontendMicro frontend: The microservices puzzle  extended to frontend
Micro frontend: The microservices puzzle extended to frontend
 
Micro Frontends.pptx
Micro Frontends.pptxMicro Frontends.pptx
Micro Frontends.pptx
 
How to build Micro Frontends with @angular/elements
How to build Micro Frontends with @angular/elementsHow to build Micro Frontends with @angular/elements
How to build Micro Frontends with @angular/elements
 
Micro Frontend Platforms for Kubernetes
Micro Frontend Platforms for KubernetesMicro Frontend Platforms for Kubernetes
Micro Frontend Platforms for Kubernetes
 

Similar to Micro Frontends

20141210 - Microservice Container
20141210 - Microservice Container20141210 - Microservice Container
20141210 - Microservice Container
Jamie (Taka) Wang
 
MICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptxMICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptx
MohammedShahid562503
 
Find a React Developer Specialized in Micro-Frontends & Modular Architecture.pdf
Find a React Developer Specialized in Micro-Frontends & Modular Architecture.pdfFind a React Developer Specialized in Micro-Frontends & Modular Architecture.pdf
Find a React Developer Specialized in Micro-Frontends & Modular Architecture.pdf
DarshanaMallick
 

Similar to Micro Frontends (20)

Scaling frontend applications with micro-frontends Presentation.pdf
Scaling frontend applications with micro-frontends Presentation.pdfScaling frontend applications with micro-frontends Presentation.pdf
Scaling frontend applications with micro-frontends Presentation.pdf
 
Microservice Approach for Web Development with Micro Frontends
Microservice Approach for Web Development with Micro FrontendsMicroservice Approach for Web Development with Micro Frontends
Microservice Approach for Web Development with Micro Frontends
 
20141210 - Microservice Container
20141210 - Microservice Container20141210 - Microservice Container
20141210 - Microservice Container
 
Transforming to Microservices
Transforming to MicroservicesTransforming to Microservices
Transforming to Microservices
 
Important Backend Frameworks To Remember For Businesses In 2023
Important Backend Frameworks To Remember For Businesses In 2023Important Backend Frameworks To Remember For Businesses In 2023
Important Backend Frameworks To Remember For Businesses In 2023
 
Think Small To Go Big - Introduction To Microservices
Think Small To Go Big - Introduction To MicroservicesThink Small To Go Big - Introduction To Microservices
Think Small To Go Big - Introduction To Microservices
 
AppDev with Microservices
AppDev with MicroservicesAppDev with Microservices
AppDev with Microservices
 
Top 5 backend frameworks for web development in.pptx
Top 5 backend frameworks for web development in.pptxTop 5 backend frameworks for web development in.pptx
Top 5 backend frameworks for web development in.pptx
 
Evolution of Application Development
Evolution of Application DevelopmentEvolution of Application Development
Evolution of Application Development
 
Microservice pitfalls
Microservice pitfalls Microservice pitfalls
Microservice pitfalls
 
Evolution of Application Development
Evolution of Application DevelopmentEvolution of Application Development
Evolution of Application Development
 
Microservices: Living Large in Your Castle Made of Sand
Microservices: Living Large in Your Castle Made of SandMicroservices: Living Large in Your Castle Made of Sand
Microservices: Living Large in Your Castle Made of Sand
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
 
MICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptxMICROSERVICES ARCHITECTURE unit -2.pptx
MICROSERVICES ARCHITECTURE unit -2.pptx
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloud
 
Micronaut Framework Guide Framework Basics and Fundamentals.pdf
Micronaut Framework Guide Framework Basics and Fundamentals.pdfMicronaut Framework Guide Framework Basics and Fundamentals.pdf
Micronaut Framework Guide Framework Basics and Fundamentals.pdf
 
MVC & CodeIgniter
MVC & CodeIgniterMVC & CodeIgniter
MVC & CodeIgniter
 
Microservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They MatterMicroservices - How Microservices Have Changed and Why They Matter
Microservices - How Microservices Have Changed and Why They Matter
 
Find a React Developer Specialized in Micro-Frontends & Modular Architecture.pdf
Find a React Developer Specialized in Micro-Frontends & Modular Architecture.pdfFind a React Developer Specialized in Micro-Frontends & Modular Architecture.pdf
Find a React Developer Specialized in Micro-Frontends & Modular Architecture.pdf
 
Will Microservices Die.pdf
Will Microservices Die.pdfWill Microservices Die.pdf
Will Microservices Die.pdf
 

More from Talentica Software

Android Media Player Development
Android Media Player DevelopmentAndroid Media Player Development
Android Media Player Development
Talentica Software
 

More from Talentica Software (20)

Typescript: Beginner to Advanced
Typescript: Beginner to AdvancedTypescript: Beginner to Advanced
Typescript: Beginner to Advanced
 
Web 3.0
Web 3.0Web 3.0
Web 3.0
 
Remix
RemixRemix
Remix
 
Web Performance & Latest in React
Web Performance & Latest in ReactWeb Performance & Latest in React
Web Performance & Latest in React
 
Nodejs Chapter 3 - Design Pattern
Nodejs Chapter 3 - Design PatternNodejs Chapter 3 - Design Pattern
Nodejs Chapter 3 - Design Pattern
 
Node js Chapter-2
Node js Chapter-2Node js Chapter-2
Node js Chapter-2
 
Node.js Chapter1
Node.js Chapter1Node.js Chapter1
Node.js Chapter1
 
Test Policy and Practices
Test Policy and PracticesTest Policy and Practices
Test Policy and Practices
 
Advanced JavaScript
Advanced JavaScriptAdvanced JavaScript
Advanced JavaScript
 
Setting Up Development Environment For Google App Engine & Python | Talentica
Setting Up Development Environment For Google App Engine & Python | TalenticaSetting Up Development Environment For Google App Engine & Python | Talentica
Setting Up Development Environment For Google App Engine & Python | Talentica
 
Connected World in android - Local data sharing and service discovery
Connected World in android - Local data sharing and service discoveryConnected World in android - Local data sharing and service discovery
Connected World in android - Local data sharing and service discovery
 
Mobile App Monetization - Ecosystem & Emerging Trends
Mobile App Monetization - Ecosystem & Emerging TrendsMobile App Monetization - Ecosystem & Emerging Trends
Mobile App Monetization - Ecosystem & Emerging Trends
 
Android Media Player Development
Android Media Player DevelopmentAndroid Media Player Development
Android Media Player Development
 
Cross Platform Mobile Technologies
Cross Platform Mobile TechnologiesCross Platform Mobile Technologies
Cross Platform Mobile Technologies
 
Big Data Technologies - Hadoop
Big Data Technologies - HadoopBig Data Technologies - Hadoop
Big Data Technologies - Hadoop
 
Big Data – Are You Ready?
Big Data – Are You Ready?Big Data – Are You Ready?
Big Data – Are You Ready?
 
Legacy modernization
Legacy modernizationLegacy modernization
Legacy modernization
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
 
Technology Challenges in Building New Media Applications
Technology Challenges in Building New Media ApplicationsTechnology Challenges in Building New Media Applications
Technology Challenges in Building New Media Applications
 
Flex on Grails - Rich Internet Applications With Rapid Application Development
Flex on Grails - Rich Internet Applications With Rapid Application DevelopmentFlex on Grails - Rich Internet Applications With Rapid Application Development
Flex on Grails - Rich Internet Applications With Rapid Application Development
 

Recently uploaded

Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
Bhaskar Mitra
 

Recently uploaded (20)

AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
Measures in SQL (a talk at SF Distributed Systems meetup, 2024-05-22)
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
SOQL 201 for Admins & Developers: Slice & Dice Your Org’s Data With Aggregate...
 
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptxUnpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
Unpacking Value Delivery - Agile Oxford Meetup - May 2024.pptx
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 

Micro Frontends

  • 1. Micro Frontends a microservice approach to frontend web development O.P. Pachoriya, Deepika Chouhan, Sanny Kumar
  • 2. 2 Micro Frontend What ? Who ? Why ? When ? How ? Demo
  • 3. What is the need of hour ??? • Modern Web Application • Multiple Team • Ship features Independently • Good Frontend • Scaling • Speed of Development • Availability • Loosely coupled & Testable Code 3
  • 5. What is Micro frontend ? • Micro frontends are distinct vertical slices of a web application that encompass the frontend, backend service, and database. • Extension of micro service architecture to frontend • 5
  • 6. Who is using Micro frontend ? 6
  • 7. Who is using Micro frontend ? 7 • Approaches taken by these companies are certainly different • Intentions are mostly the same • And list is growing every day
  • 8. Growth of Micro frontend 8
  • 9. Brief History of App development 9 Monolithic full stack app Frontend backend Micro services Component libraries / framework Micro frontend
  • 10. Brief History of App development 10
  • 11. Why to use Micro frontend ? • Modular & Loosely coupled • Faster development & Increased productivity • Individual deployment • Granular Scaling • Fault Isolation • Flexibility / Technology and framework agnostic • Evolutionary • Reusability 11
  • 12. When to use Micro frontend ? • Huge code base where different teams are contributing • Code ownership get messy • Deployment is delayed because of other part of the application • You like to use different Front End frameworks 12
  • 13. Case Studies Walmart.com • Problems • Large number of Product return Emtec Digital • Logistics Industry • Problems • Complex Arch & Code • Difficult to Scale • Limited choice of Tech • Difficult to update, test and maintain 13 https://www.youtube.com/watch?v=BcpDr0CcIxA https://www.emtec.digital/think-hub/case- studies/micro-frontends-third-party-logistics/
  • 14. Before Choosing Micro frontend ? • Team Size • How components communicate with frameworks • More than one way to divide your web components • Just because you could use multiple client-side libraries and frameworks doesn’t mean you should 14
  • 15. Any Downside Micro frontend ? 15 Payload Size Operational and governance complexity Environmen t differences
  • 16. How to implement Micro Frontends ? (Popular Ways) 16 Iframes Routing and Loading Apps Web Component Mono Repos Framework Libraries Customized Orchestration
  • 17. How to implement Micro Frontends ? (iFrame) 17 This kind of approach better suits the project where all the functionality resides on the same page without any navigation and the communication happens through the Window object.
  • 18. How to implement Micro Frontends ? (Routing and Loading Apps) 18 This kind of approach better suits the project where there is navigation or routing involved and when the app is divided into multiple apps based on the features.
  • 19. How to implement Micro Frontends ? (Web Components) 19 Combination of different technologies that allow you to create reusable components. Promotes the DRY principle.
  • 20. How to implement Micro Frontends ? (Mono Repos) 20 Monorepo is a software strategy where you can put multiple related projects under one repo. We don’t have to push shared code to separate repo as a library or module and pull it for use. Every developer has to check out the whole repo even he just needs one or two folders.
  • 21. How to implement Micro Frontends ? (Framework Library) 21 Each library that can be pushed as a node module into some private repository. We have a shell app to pull that repo where ever we need with lazy loading or dynamic imports. Communication is not a problem here since all the individual libraries end up in the same project or application.
  • 22. How to implement Micro Frontends ? (Customized Orchestration) 22 We define plain Javascript files to orchestrate the entire workflow of these micro-projects. All individual projects are deployed independently. The orchestrator can load each project based on the URL. These global objects are available for all the projects so that you can send data among applications.
  • 24. Build Time Integration of Micro Frontends as git dependency 24
  • 25. Build Time Integration of Micro Frontends as packages 25
  • 26. Run Time Integration of Micro Frontends Methods • Iframes • Javascript Functions • Web Components 26
  • 27. Iframes 27 • Implementation is easy • Isolation from other part of application • Hard to communicate with rest of app.
  • 28. Javascript Functions • Script is loaded when page loads and attaches a function to window • Based on route it determines which window function to calls • We pass element ref to function and it renders respective DOM there • Communication with rest of app easy 28
  • 29. Web Components • Script is loaded when page loads and they define a custom element • Based on route it determines which web component elements to define • Create an instance of element and append it to specified element • Outcome is same, method is different 29
  • 31. Implementation 31 • Container • Micro Frontends App • Communication across App • Shared Content • Autonomous Development
  • 32. Module Federation 32 Module federation allows a JavaScript application to dynamically run code from another bundle/build, on both client and server.
  • 33. Module Federation includes: 1. name 2. library 3. filename 4. exposes 5. shared 33