DEV Community

Cover image for Tools and libraries widely used in micro frontend architectures!
Ricardo Maia
Ricardo Maia

Posted on

Tools and libraries widely used in micro frontend architectures!

To implement a microfrontend architecture in projects, several tools and libraries are widely used. Below are the key tools categorized by their purpose:

๐™ˆ๐™ž๐™˜๐™ง๐™ค๐™›๐™ง๐™ค๐™ฃ๐™ฉ๐™š๐™ฃ๐™™ ๐™๐™ง๐™–๐™ข๐™š๐™ฌ๐™ค๐™ง๐™ ๐™จ ๐™–๐™ฃ๐™™ ๐™‡๐™ž๐™—๐™ง๐™–๐™ง๐™ž๐™š๐™จ

  1. ๐—ฆ๐—ถ๐—ป๐—ด๐—น๐—ฒ-๐—ฆ๐—ฃ๐—”

    • Description: Enables the integration of multiple JavaScript frameworks within the same frontend.
    • Official Website
  2. ๐— ๐—ผ๐—ฑ๐˜‚๐—น๐—ฒ ๐—™๐—ฒ๐—ฑ๐—ฒ๐—ฟ๐—ฎ๐˜๐—ถ๐—ผ๐—ป (๐—ช๐—ฒ๐—ฏ๐—ฝ๐—ฎ๐—ฐ๐—ธ ๐Ÿฑ)

    • Description: Allows different applications to share modules at runtime.
    • Documentation
  3. ๐—ค๐—ถ๐—ฎ๐—ป๐—ธ๐˜‚๐—ป

    • Description: A framework based on Single-SPA, facilitating the implementation of microfrontends, particularly in Vue applications.
    • Official Website
  4. ๐— ๐—ผ๐˜€๐—ฎ๐—ถ๐—ฐ

    • Description: A component-based microfrontend platform that supports the development and integration of microfrontends.
    • Official Website

๐™๐™š๐™ง๐™ง๐™–๐™ข๐™š๐™ฃ๐™ฉ๐™–๐™จ ๐™™๐™š ๐˜ฝ๐™ช๐™ž๐™ก๐™™ ๐™š ๐˜ฝ๐™ช๐™ฃ๐™™๐™ก๐™ž๐™ฃ๐™œ

  1. ๐—ช๐—ฒ๐—ฏ๐—ฝ๐—ฎ๐—ฐ๐—ธ

    • Description: A popular bundling tool that, combined with Module Federation, simplifies the implementation of microfrontends.
    • Official Website
  2. ๐—ฃ๐—ฎ๐—ฟ๐—ฐ๐—ฒ๐—น

    • Description: A web application bundler with minimal configuration, well-suited for microfrontend projects.
    • Official Website
  3. ๐—ฅ๐—ผ๐—น๐—น๐˜‚๐—ฝ

    • Description: An efficient bundler for creating packages in microfrontend applications.
    • Official Website

๐™Š๐™ง๐™˜๐™๐™š๐™จ๐™ฉ๐™ง๐™–๐™ฉ๐™ž๐™ค๐™ฃ ๐™–๐™ฃ๐™™ ๐™„๐™ฃ๐™ฉ๐™š๐™œ๐™ง๐™–๐™ฉ๐™ž๐™ค๐™ฃ ๐™๐™ค๐™ค๐™ก๐™จ

  1. ๐—™๐—ฟ๐—ถ๐—ป๐˜๐—๐—ฆ

    • Description: A modular framework for building microfrontends.
    • Official Website
  2. ๐— ๐—ถ๐—ฐ๐—ฟ๐—ผ ๐—™๐—ฟ๐—ผ๐—ป๐˜๐—ฒ๐—ป๐—ฑ๐˜€ ๐—™๐—ฟ๐—ฎ๐—บ๐—ฒ๐˜„๐—ผ๐—ฟ๐—ธ

    • Description: Facilitates the creation of microfrontend architectures by integrating multiple front-end applications.
  3. Official Website

๐˜พ๐™ค๐™ข๐™ข๐™ช๐™ฃ๐™ž๐™˜๐™–๐™ฉ๐™ž๐™ค๐™ฃ ๐™–๐™ฃ๐™™ ๐™Ž๐™ฉ๐™–๐™ฉ๐™š ๐™ˆ๐™–๐™ฃ๐™–๐™œ๐™š๐™ข๐™š๐™ฃ๐™ฉ ๐™๐™ค๐™ค๐™ก๐™จ

  1. ๐—ฅ๐—ฒ๐—ฑ๐˜‚๐˜…

    • Description: A popular state management library, useful for handling shared state across microfrontends.
    • Official Website
  2. ๐— ๐—ผ๐—ฏ๐—ซ

  3. ๐—ฅ๐˜…๐—๐—ฆ

    • Description: A library for reactive programming that aids communication between microfrontends.
    • Official Website

๐™๐™„ ๐™–๐™ฃ๐™™ ๐˜พ๐™ค๐™ข๐™ฅ๐™ค๐™ฃ๐™š๐™ฃ๐™ฉ ๐™๐™ค๐™ค๐™ก๐™จ

  1. ๐—ฆ๐˜๐—ผ๐—ฟ๐˜†๐—ฏ๐—ผ๐—ผ๐—ธ

    • Description: A tool for developing and testing UI components in isolation.
    • Official Website
  2. ๐—•๐—ถ๐˜

    • Description: A platform for sharing and reusing components across different projects.
    • Official Website

๐™„๐™ข๐™ฅ๐™ก๐™š๐™ข๐™š๐™ฃ๐™ฉ๐™–๐™ฉ๐™ž๐™ค๐™ฃ ๐™‹๐™ง๐™–๐™˜๐™ฉ๐™ž๐™˜๐™š๐™จ

  1. ๐—ฆ๐˜๐˜†๐—น๐—ฒ ๐—œ๐˜€๐—ผ๐—น๐—ฎ๐˜๐—ถ๐—ผ๐—ป

    • Description: Use CSS-in-JS or Shadow DOM to isolate styles between microfrontends.
    • CSS-in-JS
    • Shadow DOM
  2. ๐—ช๐—ฒ๐—ฏ ๐—–๐—ผ๐—บ๐—ฝ๐—ผ๐—ป๐—ฒ๐—ป๐˜๐˜€

    • Description: Use the Web Components specification to create custom, reusable elements across different microfrontends.
    • Documentation

๐˜ฟ๐™š๐™ซ๐™Š๐™ฅ๐™จ ๐™–๐™ฃ๐™™ ๐˜ฟ๐™š๐™ฅ๐™ก๐™ค๐™ฎ๐™ข๐™š๐™ฃ๐™ฉ ๐™๐™ค๐™ค๐™ก๐™จ

  1. ๐——๐—ผ๐—ฐ๐—ธ๐—ฒ๐—ฟ

    • Description: Containerizes microfrontends for consistent development and deployment.
    • Official Website
  2. ๐—ž๐˜‚๐—ฏ๐—ฒ๐—ฟ๐—ป๐—ฒ๐˜๐—ฒ๐˜€

    • Description: Orchestrates containers to scale and manage microfrontends.
    • Official Website
  3. ๐—๐—ฒ๐—ป๐—ธ๐—ถ๐—ป๐˜€

    • Description: A CI/CD tool for automating build and deployment pipelines.
    • Official Website

๐—œ๐—บ๐—ฝ๐—น๐—ฒ๐—บ๐—ฒ๐—ป๐˜๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—˜๐˜…๐—ฎ๐—บ๐—ฝ๐—น๐—ฒ๐˜€

  1. ๐— ๐—ถ๐—ฐ๐—ฟ๐—ผ-๐—™๐—ฟ๐—ผ๐—ป๐˜๐—ฒ๐—ป๐—ฑ ๐—˜๐˜…๐—ฎ๐—บ๐—ฝ๐—น๐—ฒ๐˜€ ๐—ฏ๐˜† ๐—–๐—ฎ๐—บ ๐—๐—ฎ๐—ฐ๐—ธ๐˜€๐—ผ๐—ป
    • Description: Detailed examples of different approaches to microfrontends.
    • GitHub Repository

By leveraging these tools and practices, you can create a robust and scalable microfrontend architecture for your projects, enabling independent development and efficient integration across different parts of your application.

Top comments (0)