A micro frontend architecture is an approach to developing web applications as a composition of small frontend apps. Instead of writing a large monolith frontend application, the application can be broken down into domain-specific micro frontends, which are self-contained and can be developed and deployed independently. Each micro frontend can be owned by verticalised domain specific teams. Micro frontends do have advantages and disadvantages and they are not suitable in many cases. When micro frontends is a potential solution, make sure to use a domain driven top-down approach, with no big design upfronts. Keep it simple!
Frontend Developer Love Amsterdam - 30 January 2018
Jakiś czas temu mikroserwisy zawładnęły umysłami i duszami backend developerów. Teraz nadszedł czas, by i ci na froncie odeszli od wiecznie żywych monolitów. Za sprawą Webpacka 5 i Module Federation pojawiła się nowa i ciekawa opcja realizacji idei mikrofrontendów. W trakcie prezentacji opowiem o tym, jak zacząć i zbudować solidny komponent z module federation, ile różnych frameworków użyć i czy w ogóle wykorzystanie mikrofrontendów jest dla wszystkich.
[DevDay2019] Micro Frontends Architecture - By Thang Pham, Senior Software En...DevDay Da Nang
Micro frontends is an approach to building frontends that splits the application into multiple independently deliverable components. This approach allows different teams to work on individual components without impacting the work of others and improves scalability. There are two main technical approaches for implementing micro frontends: UI composition, where components are rendered on the client-side using techniques like iframes or custom elements, and server-side composition, where a server acts as a composition layer to combine fragments from multiple sources. The presentation covered the benefits and challenges of both monolithic and microservice architectures as well as examples of implementing micro frontends using UI and server-side composition techniques.
The document discusses the evolution of frontend architectures from monolithic to microservices-based approaches. In the past, frontends and backends were combined in a single monolith application. Now, microservices have separated the backend into independent services while frontends have evolved into independent micro frontends. In the future, micro frontends will be developed independently but composed together with a base application and routed to by an API gateway along with separate microservices for individual products, baskets, and advertising.
A presentation to explain the microservices architecture, the pro and the cons, with a view on how to migrate from a monolith to a SOA architecture. Also, we'll show the benefits of the microservices architecture also for the frontend side with the microfrontend architecture.
Ivan Jovanovic - Micro Frontends - Codemotion Rome_2019Codemotion
The web is changing every day and it’s so hard to follow and implement all the new and fancy stuff that is being built. Cool new frameworks, libraries, methodologies and new approaches to solving problems. Usually is not that easy to deprecate some old technology and migrate to the new one. There are not many developers that still want to work with Angular 1 or Backbone and moving to something new is becoming necessary. If this sounds familiar to you, then this talk is for you! There is an innovative way to migrate from the old technology, to change the applications step by step
Micro frontend architecture_presentation_ssoniSandeep Soni
This document discusses micro frontends, which is a microservices approach to front end web development. It outlines some issues with monolithic frontends like scaling and communication problems. It then discusses micro frontend design principles such as autonomous features, team ownership, being tech agnostic, driving value, and following microservices patterns. Finally, it covers techniques for implementing micro frontends including using separate or shared runtimes with options like micro apps, iframes, or webpack modular federation and integrating them through runtime, build time, or iframe methods.
There is no doubt that one of the most emerging terms in today Tech Community is MicroFront end Architecture, in this Lecture, we will go through the Basics of Micro-FrontEnd Architecture Concept, and will discuss with Examples, How some techniques to implement it, Also will discuss if its suitable for you to migrate from old single Front-End App to Micro-FrontEnd Architecture.
This document discusses micro frontends, which extend the microservices architecture approach to frontend web development. It defines micro frontends as distinct slices of a web application that encompass the frontend, backend service, and database. The document then discusses why companies are using micro frontends and when they should be used. It provides examples of how companies like Walmart and Emtec Digital have implemented micro frontends. Finally, it covers popular ways to implement micro frontends such as using iframes, routing, web components, monorepos, and framework libraries.
"Micro-frontends, web development", Oleksandr KhivrychFwdays
Architecting micro-frontends can be challenging. The right micro-frontends approach can provide many benefits for organizations. But, poorly architected can sometimes lead to many critical issues (performance, complexity, big cognitive load). In this talk, let's explore how we can keep it simple with Module Federation and enable independent release flow in modern web applications.
Shift Remote FRONTEND: Micro Frontend Architecture: A Look Into the Future - ...Shift Conference
Good frontend development is hard. Scaling frontend development is even harder because you need to ensure that multiple teams can work on a big and complex project simultaneously and without any blockers. Today you often hear about micro frontends which are one of the more controversial Web topics. What are they? Are they worth all the fuzz? Should you implement them? As someone who worked at integrating this in Infobip’s Web Interface, I want to use our example to show you our way of thinking: how did we know that we have problems, how did we decide to approach the implementation of micro frontend architecture and why did we decide to go with it, and which problems we ran into. We will also look at alternate available possibilities useful for anyone.
This document discusses micro-frontends, an approach to building applications where the frontend is split into independent modules. It introduces micro-frontends as a way to achieve independent releases for the frontend like microservices do for the backend. It outlines some key things to consider with micro-frontends like composing multiple frontends, sharing data between them, ensuring consistent UX, and testing strategies. It describes options for composing frontends at build time vs run time and approaches for sharing data. It also discusses the importance of design consistency and provides testing strategies like consumer driven contracts and functional tests. In summary, micro-frontends allow independent teams to work on different parts of the frontend while ensuring a consistent user experience.
На JavaScript Odesa #TechTalks мы поговорили о микрофронтендах как о современном архитектурном стиле проектирования для фронтенд разработки, который облегчает поддержку и деплой обновлений для крупных проектов.
Также мы обсудили:
Что такое микрофронтенды?
Как использовать их с старым проектом?
Монорепа vs мультирепа и почему?
О спикере:
Максим Белкин, Senior Software Engineer с 10-летним опытом коммерческой разработки веб-приложений. У Максима большой опыт в создании одностраничных приложений с использованием современных фреймворков и инструментов, а также большой опыт в области серверной разработки и создания REST API. Он также обладает глубокими знаниями в области объектно-ориентированной разработки, алгоритмов, кодирования и шаблонов тестирования и имеет опыт в гибкой разработке программного обеспечения, включая роли SCRUM Master и Team Lead.
Micro frontend: The microservices puzzle extended to frontendAudrey Neveu
Microservices are at the top of the hype right now and perhaps you’ve already fallen for them and are replacing your good old monolith for new shiny microservices on the back-end.
But have you ever considered doing the same on the front-end? Even hype-r (or crazy-er, we’ll let you judge), have you tried mixing different JavaScript frameworks (let’s say AngularJS, Angular and React for example) in a Single Page Application?
That’s what Micro Frontend is and that’s what we’ve done this year at Saagie. In this talk I’d like to give you feedback on the different architectures we’ve tried, their pros and cons and help you find which one would be the best for you, just in case you’d like to opt for the dark and crazy side of front-end.
The document discusses micro-frontend architecture, which divides the frontend UI into smaller, semi-independent applications. It covers the core ideas like technological independence and faster development. Integration approaches include server-side templates, build-time integration using packages, and runtime integration with iframes or JavaScript. Challenges include complexity, coordination, and performance, which can be overcome with standardization and DevOps practices. Popular companies using microfrontends are IKEA, Upwork, and Spotify.
This document provides an introduction to microservices, including:
- Microservices are small, independently deployable services that work together and are modeled around business domains.
- They allow for independent scaling, technology diversity, and enable resiliency through failure design.
- Implementing microservices requires automation, high cohesion, loose coupling, and stable APIs. Identifying service boundaries and designing for orchestration and data management are also important aspects of microservices design.
- Microservices are not an end goal but a means to solve problems of scale; they must be adopted judiciously based on an organization's needs.
This presentation is conducted on 14th Sept in Limerick DotNet User Group.
(https://www.meetup.com/preview/Limerick-DotNet/events/xskpdnywmbsb)
SlideShare Url: https://www.slideshare.net/lalitkale/introduction-to-microservices-80583928
In this presentation, new architectural style - Microservices and it's emergence is discussed. We will also briefly touch base on what are not microservices, Conway's law and organization design, Principles of microservices and service discovery mechanism and why it is necessary for microservices implementation.
About Speaker:
Lalit is a senior developer, software architect and consultant with more than 12 yrsof .NET experience. He loves to work with C# .NET and Azure platform services like App Services, Virtual Machines, Cortana, and Container Services. He is also the author of 'Building Microservices with .NET Core' (https://www.packtpub.com/web-development/building-microservices-net-core) book.
To know more and connect with Lalit, you can visit his LinkedIn profile below. https://www.linkedin.com/in/lalitkale/
This presentation will be useful for software architects/Managers, senior developers.
Do share your feedback in comments.
Learn all about microservices from Product Marketing Manager Dan Giordano. We'll cover how to get started, the benefits, potential challenges, and how SmartBear can help.
Scaling frontend applications with micro-frontends Presentation.pdfKatamaRajuBandigari1
This document discusses micro-frontends and their technical implementation. It begins with an overview of scaling applications from monoliths to microservices and then micro-frontends. A micro-frontend is defined as the technical representation of a business subdomain, allowing independent implementations by single teams. Various technical implementations are reviewed, including iframes, components, and server-side composition. The document concludes with examples of DAZN's implementation and micro-frontend frameworks like Single-SPA and Frint.js.
Dipping Your Toes Into Cloud Native Application DevelopmentMatthew Farina
Presented at CloudDevelop 2016
Building cloud native applications in containers is a new hot topic. Netflix and Google are two prime examples that have been doing it successfully for some time. Some of the new exciting projects like Docker and Kubernetes are focused on cloud native applications in containers. There are supposed to be numerous benefits including the ability to scale applications out easily while doing development on small systems like laptops, the ability for the system to handle some operational problems, and the capability to safely deploy updates to production many times per day. But, what does this look like in practice and how do you start the move to cloud native and containerized applications? In this session we'll look at what makes up a cloud native application, how they work, and how you can start small. We'll look at applications from an architecture and process point of view along with how you can deploy them to AWS, Azure, or Google Cloud. You'll walk away ready to start development on a cloud native app.
Cisco at v mworld 2015 shipped-vmworldldangelo0772
The document discusses enabling developers to build, deploy, and run containerized microservices across multiple public and private clouds (intercloud). It introduces Project Shipped, a hybrid DevOps platform that allows developers to develop microservice applications on an intercloud environment. Project Shipped provides tools for continuous integration, deployment, and infrastructure management to deploy and run microservices on Cisco's MetaCloud using open source technologies like Mesos, Marathon, and Docker.
Micro frontends is an architectural approach that breaks large web applications into smaller independent applications. This allows individual modules to be developed, tested, and deployed independently while still being combined into a single app. The benefits include incremental upgrades, reduced communication overhead, and allowing autonomous teams. However, challenges include increased payload size and operational complexity. Frameworks like Single-spa and Frint help implement micro frontends by routing between modules.
How to migrate large project from Angular to ReactTomasz Bak
Learn migration strategies for large front-end migration projects with an emphasis on continuous business value delivery.
Identify the Bounded Contexts in your application and
make your application more modular.
* Transform - create a parallel new view
* Coexist - leave the existing view for a time, so the functionality is implemented incrementally
* Eliminate - remove the old functionality as users stop using it
Micro Frontends
“Extending the microservice idea to frontend development”.
What does it really mean? Is it just abusing a certain hype? Should I consider it? How should I approach it?
These are just some of the questions one might ask when presented with this notion. Long story short – Micro front-ends are a reality! However, it is not for everyone.
In this session, we’re going to demystify micro frontends. We’re going to establish what it is, when it should be considered and the decisions to be made
Gitlab for PHP developers (Brisbane PHP meetup, 2019-Jan-29)Vladimir Roudakov
Gitlab is not only code management service and the only open source platform, it is also "A full DevOps tool" as stated on their home page.
In this talk we are going to see what are the features available in GitLab free version and why is it more than source control tool.
CI (continuous integration) is fundamental for agile deployment and should be improved step-by-step. Issue tracking tools like JIRA, Redmine, and spreadsheets can manage requirements and tasks. Code review is an important part of the coding process and helps improve code quality and mentorship. Distributed version control systems like Git provide more flexible workflows than centralized ones and integrate well with code review tools like Gerrit.
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
The microservices honeymoon is over. When starting a new project or revamping a legacy monolith, teams started looking for alternatives to microservices. The Modular Monolith, or 'Modulith', is an architecture that reaps the benefits of (vertical) functional decoupling without the high costs associated with separate deployments. This talk will delve into the advantages and challenges of this progressive architecture, beginning with exploring the concept of a 'module', its internal structure, public API, and inter-module communication patterns. Supported by spring-modulith, the talk provides practical guidance on addressing the main challenges of a Modultith Architecture: finding and guarding module boundaries, data decoupling, and integration module-testing. You should not miss this talk if you are a software architect or tech lead seeking practical, scalable solutions.
About the author
With two decades of experience, Victor is a Java Champion working as a trainer for top companies in Europe. Five thousands developers in 120 companies attended his workshops, so he gets to debate every week the challenges that various projects struggle with. In return, Victor summarizes key points from these workshops in conference talks and online meetups for the European Software Crafters, the world’s largest developer community around architecture, refactoring, and testing. Discover how Victor can help you on victorrentea.ro : company training catalog, consultancy and YouTube playlists.
This document discusses the challenges of large monolithic frontend applications and proposes microfrontends as an architectural approach to address these challenges. It describes different patterns for implementing microfrontends, including mini single-page applications (SPAs) separated by links, a single SPA with multiple independently developed components, and using web components for tighter integration. Key challenges discussed are performance, shared dependencies, and inter-component communication. Examples and demos of single-spa and Angular elements are also referenced.
Tampere Docker meetup - Happy 5th Birthday DockerSakari Hoisko
Part of official docker meetup events by Docker Inc.
https://events.docker.com/events/docker-bday-5/
Meetup event:
https://www.meetup.com/Docker-Tampere/events/248566945/
- Vinay Mittal is an IT professional with over 10 years of experience in C++ development. He currently works as a Computer Scientist at Adobe India.
- His skills include C/C++, Perl, Unix shell scripting, Javascript, AWS services, SQL databases, version control systems, and UNIX/Linux systems.
- Previous experience includes developing multi-threaded C++ applications at RBS and security applications at CA. At Amazon he worked on product ads and billing systems.
- Education includes a Masters in Computer Science from IIT Roorkee with honors.
Webinar by ZNetLive & Plesk- Winning the Game for WebOps and DevOps ZNetLive
This webinar presentation illustrates everything that the experts of Plesk & ZNetLive discussed about the opportunities in WebOps and DevOps market along with new features of ZNetLive's Managed WordPress hosting and Cloud VPS, both powered by Plesk Onyx.
To know more, visit- https://www.znetlive.com/
This session will examine how enterprises can leverage cloud-enabled application lifecycle management (ALM) frameworks to manage, govern and empower IT. It will explore best practices for quick release cycle management and rapid template-driven development to deliver applications in a governed and secure manner. It will also focus on how to provide internal business capabilities as APIs for application development. Moreover, the session will discuss WSO2 clients that are increasing startup speed, reducing project risk, and enabling new business models using WSO2 DevOps platform-as-a-service (PaaS) solutions.
Gerrit is a code review system that tightly integrates with Git. It provides a web-based user interface and API for reviewing changes, managing access control, and integrating with other tools like Jenkins. Key features include fast and easy code reviews, flexible integration options, and tools for managing projects, users, and access control. Gerrit supports code review workflows and allows configuring commit policies and change submission actions.
Lessons Learned from Migrating Legacy Enterprise Applications to MicroservicesVMware Tanzu
SpringOne Platform 2016
Speakers: Ross Zhang; Senior Software Developer, OTPP & Jun Li; Software Engineer, OTPP
As in many mid-to-large size organizations, you may have traditional Java enterprise applications, which are considered heavy and cumbersome, in terms of development, deployment and operations. You are thinking about migrating legacy applications for a long time but migration is a complex puzzle and there are many missing pieces. At Ontario Teachers’ Pension Plan, one of the world’s largest institutional investors, we have successfully solved many puzzle pieces with migrating traditional Java enterprise applications using Spring Boot, Spring Cloud and Cloud Foundry. This presentation will benefit many of you who may be in the same shoes as we were. Learn how we:
-solved dependency management issues
-accelerated application development and deployment
-monitored and checked application status
-migrated monolithic apps to microservices using Spring Cloud
-leveraged Platform as a Service.
Selecting the right automation framework is hard. It might be a critical decision in implementing your continuous testing agenda. Today, there are so many possibilities. From open source solutions (Selenium Appium, etc.), to HPE developed commercial tools (QTP, UFT, Mobile Center).
What was the process that we did in order to select the right automation framework. Our approach was to 1st define our needs from such a framework and we ended up with a list of 10 must have requirements for such a framework and then went on to pick the right tool. We ended up with different frameworks for different projects with a wide combinations of open source to our own tools (UFT, LeanFT, etc.)
"Micro-frontends from A to Z. How and Why we use Micro-frontends in Namecheap...Fwdays
Micro-frontends has been a hyped topic for the last several years but unfortunately, it is hard to find ready to production solution. We built in-house open-source solution that allows us to deliver more than 100 apps continuously. Micro-frontends is not only about code splitting it is about the full development cycle and I will try to explain to you how we use it in production.
Browser. FrontEnd Frameworks. Gateway. Server. Scaling. Delivery.
Monitoring the Execution of 14K Tests: Methods Tend to Have One Path that Is ...andrehoraa
The literature has provided evidence that developers are likely to test some behaviors of the program and avoid other ones. Despite this observation, we still lack empirical evidence from real-world systems. In this paper, we propose to automatically identify the tested paths of a method as a way to detect the method’s behaviors. Then, we provide an empirical study to assess the tested paths quantitatively. We monitor the execution of 14,177 tests from 25 real-world Python systems and assess 11,425 tested paths from 2,357 methods. Overall, our empirical study shows that one tested path is prevalent and receives most of the calls, while others are significantly less executed. We find that the most frequently executed tested path of a method has 4x more calls than the second one. Based on these findings, we discuss practical implications for practitioners and researchers and future research directions.
Bring Strategic Portfolio Management to Monday.com using OnePlan - Webinar 18...OnePlan Solutions
Unlock the full potential of your projects with OnePlan’s seamless integration with monday.com. Join us to discover how OnePlan enhances monday.com by aligning your portfolio of projects with your organization’s strategic goals, optimizing resource allocation, and streamlining performance tracking. Learn how this powerful combination can drive efficiency, cost savings, and strategic success within your organization.
Empowering Businesses with Intelligent Software Solutions - GrawlixAarisha Shaikh
Explore Grawlix's comprehensive suite of intelligent software solutions designed to drive transformative growth and scalability for businesses. This presentation covers our expertise in bespoke software development, digital marketing, web design, cloud solutions, cybersecurity, AI/ML, and IT consulting. Discover how Grawlix's customized solutions enhance productivity, streamline processes, and enable data-driven decision-making. Learn about our key projects, technologies, and the dedicated team who ensures exceptional client satisfaction through innovation and excellence.
AI - Your Startup Sidekick (Leveraging AI to Bootstrap a Lean Startup).pdfDaniel Zivkovic
Ready to take your #startup to the next level? Pankaj Upreti, Lagna360 founder, reveals how a #solopreneur can leverage #AI across their entire business. Learn to use AI as your ultimate sidekick in bootstrapping a #LeanStartup, from coding to marketing. Don't miss these game-changing insights for your entrepreneurial journey!
#ServerlessTO meetup recording is at https://youtu.be/J17OZ6_2jyk
Don't forget to like, comment, and subscribe for more insightful talks and tutorials from #Serverless #Toronto: https://www.meetup.com/serverless-toronto/events/
PathSpotter: Exploring Tested Paths to Discover Missing Tests (FSE 2024)andrehoraa
When creating test cases, ideally, developers should test both the expected and unexpected behaviors of the program to catch more bugs and avoid regressions. However, the literature has provided evidence that developers are more likely to test expected behaviors than unexpected ones. In this paper, we propose PathSpotter, a tool to automatically identify tested paths and support the detection of missing tests. Based on PathSpotter, we provide an approach to guide us in detecting missing tests. To evaluate it, we submitted pull requests with test improvements to open-source projects. As a result, 6 out of 8 pull requests were accepted and merged in relevant systems, including CPython, Pylint, and Jupyter Client. These pull requests created/updated 32 tests and added 80 novel assertions covering untested cases. This indicates that our test improvement solution is well received by open-source projects.
Test Polarity: Detecting Positive and Negative Tests (FSE 2024)andrehoraa
Positive tests (aka, happy path tests) cover the expected behavior of the program, while negative tests (aka, unhappy path tests) check the unexpected behavior. Ideally, test suites should have both positive and negative tests to better protect against regressions. In practice, unfortunately, we cannot easily identify whether a test is positive or negative. A better understanding of whether a test suite is more positive or negative is fundamental to assessing the overall test suite capability in testing expected and unexpected behaviors. In this paper, we propose test polarity, an automated approach to detect positive and negative tests. Our approach runs/monitors the test suite and collects runtime data about the application execution to classify the test methods as positive or negative. In a first evaluation, test polarity correctly classified 117 tests as as positive or negative. Finally, we provide a preliminary empirical study to analyze the test polarity of 2,054 test methods from 12 real-world test suites of the Python Standard Library. We find that most of the analyzed test methods are negative (88%) and a minority is positive (12%). However, there is a large variation per project: while some libraries have an equivalent number of positive and negative tests, others have mostly negative ones.
Fix Production Bugs Quickly - The Power of Structured Logging in Ruby on Rail...John Gallagher
Rails apps can be a black box. Have you ever tried to fix a bug where you just can’t understand what’s going on? This talk will give you practical steps to improve the observability of your Rails app, taking the time to understand and fix defects from hours or days to minutes. Rails 8 will bring an exciting new feature: built-in structured logging. This talk will delve into the transformative impact of structured logging on fixing bugs and saving engineers time. Structured logging, as a cornerstone of observability, offers a powerful way to handle logs compared to traditional text-based logs. This session will guide you through the nuances of structured logging in Rails, demonstrating how it can be used to gain better insights into your application’s behavior. This talk will be a practical, technical deep dive into how to make structured logging work with an existing Rails app.
I talk about the Steps to Observable Software - a practical five step process for improving the observability of your Rails app.
Generative AI The Key to Smarter, Faster IT Development.pdfayushiqss
Discover how generative AI is transforming IT development in this blog. Learn how using AI software development, artificial intelligence tools, and generative AI tools can lead to smarter, faster, and more efficient software creation. Explore real-world applications and see how these technologies are driving innovation and cutting costs in IT development.
A Step-by-Step Guide to Selecting the Right Automated Software Testing Tools.pdfkalichargn70th171
Software testing is highly essential in the software development lifecycle. Selecting the appropriate testing tool is pivotal for effective test automation and project success. As technology advances, the demands of the software market escalate, pushing industry players to deliver high-quality products swiftly through agile methodologies.
WebTrack 360 is a powerful analytics platform tool designed to help businesses track and analyze various aspects of their website's performance in real-time.
WebTrack 360 offers a range of features including Goal Tracking, Visitor Analysis, Real-Time Tracking, Heatmaps, Session Replays, and Team Collaboration, providing comprehensive insights into website performance.
WebTrack 360 offers a range of features including Goal Tracking, Visitor Analysis, Real-Time Tracking, Heatmaps, Session Replays, and Team Collaboration, providing comprehensive insights into website performance.
Goal Tracking in WebTrack 360 enables you to set specific goals for your website, such as conversions or user interactions, and track progress towards achieving those goals over time, helping you measure the effectiveness of your website's performance.
Unified customer experience management tools integrate various customer interaction channels, data, and analytics into a single platform. They streamline customer service, enhance personalization, and provide insights for improving customer satisfaction and loyalty across all touchpoints.
Innoit Labs - Flutter App Development Company In Hyderabad.pptxofficialinnoitlabs
Innoit Labs is a leading Flutter app development company in Hyderabad, we specialize in creating high-quality, cross-platform mobile applications that offer a seamless user experience. Our expert team leverages the power of Flutter to deliver visually stunning and performance-optimized apps tailored to your business needs. With a strong focus on innovation and customer satisfaction, we help businesses in Hyderabad and beyond transform their ideas into successful mobile solutions. Choose us for reliable, efficient, and scalable Flutter app development services.
pgroll - Zero-downtime, reversible, schema migrations for PostgresTudor Golubenco
pgroll is an open source command-line tool that offers safe and reversible schema migrations for PostgreSQL by serving multiple schema versions simultaneously. It takes care of the complex migration operations to ensure that client applications continue working while the database schema is being updated. This includes ensuring changes are applied without locking the database, and that both old and new schema versions work simultaneously (even when breaking changes are being made!). This removes risks related to schema migrations, and greatly simplifies client application rollout, also allowing for instant rollbacks.
5. Monolith
+ Single codebase
+ Easy quick setup
+ No version management
+ Single CI/CD pipeline
- Refactoring is difficult
- Try new stack
- Experiment
- Long build times
- Long development times
- Long deployment cycles
27. iframe
App Shell
- State
- Routing
Isolation
Separate Deployment
Feels like one page
Different Frameworks
Tree Shaking
Several Frontends
No Version Conflicts
Separate Development
Vendor Bundles
32. Separate Deployment
Feels like one page
Different Frameworks
Tree Shaking
Several Frontends
Separate Development
Isolation
Vendor Bundles
No Version Conflicts
Web Components
Each app a
component
Again App Shell is
the orchestrator
49. http://www.dwmkerr.com/the-death-of-microservice-madness-in-2018/
Can you fit your team
around a large table?
Do you have monolithic
dependencies?
Got container, orchestration,
devops experience?
Yes
No
Yes
No
Yes
No
You might not need
micro frontends yet
Micro frontends
might help you
Micro frontends
might be valuable
Consider giving
them a try first
Integration might be
complicated
Micro frontends may
be easily integrated
51. “Architecture in micro frontends is domain driven,
and low level components can be technical driven.
It makes sense to follow a top down approach.
Thinking of how to split your monolith in apps
according to your domain. No big design upfront
as things might go wrong.”
Stefan Tilkov @ Devoxx Belgium 2016