Coexisting Angular Microfrontends

screenshot of Coexisting Angular Microfrontends

Multiple angular applications, coexisting in one page via single-spa.

Overview

Coexisting Angular Microfrontends is an innovative approach to managing multiple Angular applications within a single page. This starter kit serves as a valuable resource for developers looking to leverage microfrontends using Angular CLI while maintaining a cohesive architecture. With the integration of single-spa, it allows the addition of various frameworks such as React and Vue, making it versatile for different development preferences and needs.

This repository not only showcases the architecture but also emphasizes best practices for managing projects independently. The key takeaway is that each Angular application should be housed in its own repository for better team collaboration and streamlined development workflows.

Features

  • Multi-Framework Support: Integrates with single-spa, allowing the coexistence of Angular, React, Vue, and other frameworks seamlessly within one application.
  • Independent Repositories: Encourages maintaining one Git repository per Angular application, promoting organized development and management.
  • Local Development Flexibility: Supports local development by letting you run a single microfrontend at a time, which enhances the developer experience.
  • Dynamic Module Loading: Easily modify module URLs for local testing, ensuring that changes reflect immediately without needing to restart all applications.
  • Customizable Ports: Offers flexibility in configuring project ports by modifying the Import Map in the index.html file.
  • Deployment Overriding: Enables you to deploy code while allowing specific microfrontends to be overridden in a live environment using import-map-overrides.
  • Tutorial Resources: Provides tutorial videos and comprehensive documentation to guide users through the setup and operational processes.
  • Collaborative Development: Facilitates multiple teams working on various microfrontends concurrently, enhancing productivity and project scalability.