Voltar para lista

13 de 13 visíveis

Arquitetura selecionada

Module Federation

Module Federation permite compor aplicações a partir de bundles remotos. É uma técnica comum para microfrontends, especialmente quando cada time publica partes independentes da interface.

Navegue pelos arquivos para ver como a arquitetura aparece no código.

Module Federation

Caminhoshell/module-federation.config.ts

export const config = {
  remotes: {
    checkout: 'http://localhost:4201/remoteEntry.js',
  },
};

Prós

  • Permite deploy independente de partes da aplicação.
  • Compartilha dependências em runtime quando bem configurado.
  • Ajuda times grandes a dividir responsabilidades.

Contras

  • Configuração e debug de runtime são mais complexos.
  • Contratos quebrados podem falhar só em integração.
  • Versionamento de dependências compartilhadas exige cuidado.

Quando usar

  • Microfrontends com times e releases independentes.
  • Produtos que precisam compor módulos remotos.
  • Cenários em que independência operacional justifica complexidade.

Exemplo real

Um portal corporativo cujo shell carrega módulos remotos de RH, financeiro, compras e atendimento.

Cenário prático

O shell resolve a rota `/checkout` e baixa o remote `checkout` em runtime, permitindo que o time de checkout publique sem rebuild do shell.

Como implementar

  • Configure remotes e exposes com contratos explícitos.
  • Compartilhe dependências críticas como Angular em singleton quando fizer sentido.
  • Crie fallback para falha de carregamento remoto e monitore erros de runtime.

Cuidado comum

Ignorar compatibilidade de versões entre shell e remotes pode causar falhas difíceis de reproduzir.