React and Microfrontends

certificate
Recording and certification are available to Multipass and Full ticket holders only
Please login if you have one.
Rate this content
Bookmark

Leveraging reactjs to create reusable microfrontends addressing challenges and common pitfalls.

This workshop has been presented at React Summit US 2024, check out the latest edition of this React Conference.

FAQ

Harish Paishwari is a lead AI ML engineer at Optum, focusing on building full stack AI ML applications and has been working with React since its launch in 2013.

The main topic of Harish Paishwari's talk at the React Summit is about React and Microfrontends.

Microfrontends are a way to structure frontend applications into smaller, manageable pieces that can be developed, deployed, and integrated independently, similar to microservices in backend architecture.

An NPM module is typically integrated at build time and reused across projects, while a microfrontend is integrated at runtime and is more suitable for larger, complex applications requiring independent development and deployment.

Module federation in Webpack 5 allows sharing of dependencies between different components at runtime, making it easier to integrate microfrontends without duplicating dependencies.

Some challenges include managing large codebases as team sizes grow, ensuring consistency in design and user experience, and handling communication and data sharing between microfrontends.

CSS encapsulation prevents style conflicts between the parent application and microfrontends, ensuring that styles are applied consistently and do not interfere with each other.

Best practices include versioning microfrontends to manage updates and deprecation, documenting components clearly for developers, and using tools like Emotion for CSS encapsulation.

Communication between microfrontends should follow React's data down, action up principle to ensure consistent data flow, avoiding complex event-driven architectures unless necessary for specific use cases.

Tools like Webpack's module federation and libraries like Emotion for CSS encapsulation facilitate microfrontend development with React.

Harsh Maheshwari
Harsh Maheshwari
56 min
26 Nov, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
I'm thrilled to be here at the React Summit to talk about React and Microfrontends. Micro frontends allow reusable components to be shared across the organization and are consumed at runtime using webpack's module federation feature. The module federation plugin enables sharing dependencies with unknown components. Micro frontends can be configured with Webpack by chunking and specifying shared dependencies. When rendering web components from a remote, it's best practice to import them using react lazy or loadable. When deciding between micro frontends and npm packages, consider the reusability at build time or runtime. Setting up micro frontend development involves installing the necessary libraries and deciding on eagerly or lazily sharing dependencies. Splitting monolithic content into microcontent requires considering independence and avoiding page awareness. Microcontent should be consistent and encapsulated using tools like emotion. Scaling and versioning microcontents is important for deployment at scale. Communication between microcontents can be done using React's one-way data binding. Shadow DOM can be used for encapsulation, but it has challenges with styling and accessibility. Developer mindset and clear documentation are crucial for consistency and communication in microfrontend development.
Available in Español: React y Microfrontends
Video transcription and chapters available for users with access.

Watch more workshops on topic

AI on Demand: Serverless AI
DevOps.js Conf 2024DevOps.js Conf 2024
163 min
AI on Demand: Serverless AI
Top Content
Featured WorkshopFree
Nathan Disidore
Nathan Disidore
In this workshop, we discuss the merits of serverless architecture and how it can be applied to the AI space. We'll explore options around building serverless RAG applications for a more lambda-esque approach to AI. Next, we'll get hands on and build a sample CRUD app that allows you to store information and query it using an LLM with Workers AI, Vectorize, D1, and Cloudflare Workers.
High-performance Next.js
React Summit 2022React Summit 2022
50 min
High-performance Next.js
Workshop
Michele Riva
Michele Riva
Next.js is a compelling framework that makes many tasks effortless by providing many out-of-the-box solutions. But as soon as our app needs to scale, it is essential to maintain high performance without compromising maintenance and server costs. In this workshop, we will see how to analyze Next.js performances, resources usage, how to scale it, and how to make the right decisions while writing the application architecture.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Scaling Up with Remix and Micro Frontends
Remix Conf Europe 2022Remix Conf Europe 2022
23 min
Scaling Up with Remix and Micro Frontends
Top Content
This talk discusses the usage of Microfrontends in Remix and introduces the Tiny Frontend library. Kazoo, a used car buying platform, follows a domain-driven design approach and encountered issues with granular slicing. Tiny Frontend aims to solve the slicing problem and promotes type safety and compatibility of shared dependencies. The speaker demonstrates how Tiny Frontend works with server-side rendering and how Remix can consume and update components without redeploying the app. The talk also explores the usage of micro frontends and the future support for Webpack Module Federation in Remix.
Understanding React’s Fiber Architecture
React Advanced 2022React Advanced 2022
29 min
Understanding React’s Fiber Architecture
Top Content
This Talk explores React's internal jargon, specifically fiber, which is an internal unit of work for rendering and committing. Fibers facilitate efficient updates to elements and play a crucial role in the reconciliation process. The work loop, complete work, and commit phase are essential steps in the rendering process. Understanding React's internals can help with optimizing code and pull request reviews. React 18 introduces the work loop sync and async functions for concurrent features and prioritization. Fiber brings benefits like async rendering and the ability to discard work-in-progress trees, improving user experience.
Full Stack Components
Remix Conf Europe 2022Remix Conf Europe 2022
37 min
Full Stack Components
Top Content
RemixConf EU discussed full stack components and their benefits, such as marrying the backend and UI in the same file. The talk demonstrated the implementation of a combo box with search functionality using Remix and the Downshift library. It also highlighted the ease of creating resource routes in Remix and the importance of code organization and maintainability in full stack components. The speaker expressed gratitude towards the audience and discussed the future of Remix, including its acquisition by Shopify and the potential for collaboration with Hydrogen.
The Eternal Sunshine of the Zero Build Pipeline
React Finland 2021React Finland 2021
36 min
The Eternal Sunshine of the Zero Build Pipeline
For many years, we have migrated all our devtools to Node.js for the sake of simplicity: a common language (JS/TS), a large ecosystem (NPM), and a powerful engine. In the meantime, we moved a lot of computation tasks to the client-side thanks to PWA and JavaScript Hegemony.
So we made Webapps for years, developing with awesome reactive frameworks and bundling a lot of dependencies. We progressively moved from our simplicity to complex apps toolchains. We've become the new Java-like ecosystem. It sucks.
It's 2021, we've got a lot of new technologies to sustain our Users eXperience. It's time to have a break and rethink our tools rather than going faster and faster in the same direction. It's time to redesign the Developer eXperience. It's time for a bundle-free dev environment. It's time to embrace a new frontend building philosophy, still with our lovely JavaScript.
Introducing Snowpack, Vite, Astro, and other Bare Modules tools concepts!
Composition vs Configuration: How to Build Flexible, Resilient and Future-proof Components
React Summit 2022React Summit 2022
17 min
Composition vs Configuration: How to Build Flexible, Resilient and Future-proof Components
Top Content
Today's Talk discusses building flexible, resilient, and future-proof React components using composition and configuration approaches. The composition approach allows for flexibility without excessive conditional logic by using multiple components and passing props. The context API can be used for variant styling, allowing for appropriate styling and class specification. Adding variants and icons is made easy by consuming the variant context. The composition and configuration approaches can be combined for the best of both worlds.
Remix Architecture Patterns
Remix Conf Europe 2022Remix Conf Europe 2022
23 min
Remix Architecture Patterns
Top Content
This Talk introduces the Remix architecture patterns for web applications, with over 50% of participants using Remix professionally. The migration from single page applications to Remix involves step-by-step refactoring and offers flexibility in deployment options. Scalability can be achieved by distributing the database layer and implementing application caching. The backend for frontend pattern simplifies data fetching, and Remix provides real-time capabilities for collaborative features through WebSocket servers and Server-SendEvents.