O Firebase App Hosting foi criado especificamente para oferecer suporte ao desenvolvimento de apps da Web modernos centrado em frameworks. Use esta página como referência para as ferramentas e frameworks que o App Hosting oferece suporte direto, além de um ponto de partida para aprender sobre frameworks e ferramentas relacionados.
Frameworks da Web e App Hosting
O App Hosting oferece dois níveis gerais de suporte para frameworks da Web modernos: suporte preconfigurado para build e implantação e suporte no nível da comunidade por contribuições de código aberto em conformidade com a especificação do pacote de saída. Em ambos os casos, um componente adaptador de framework permite a integração de um framework específico com o App Hosting.
Frameworks com suporte pré-configurado para build e implantação
Com suporte pré-configurado para build e implantação, o Firebase identifica qual
estrutura você está usando ao inspecionar o arquivo package-lock.json
ou outro arquivo de
bloqueio e otimiza os processos de build e implantação do seu app. O Google está
comprometido em manter o suporte para essas estruturas, e a equipe de suporte do Firebase
pode aceitar relatórios de problemas e solicitações de recursos.
Esse nível de suporte é oferecido para:
- Next.js
- Angular
Consulte as programações de suporte para detalhes sobre versões específicas e níveis de suporte.
Se você tentar implantar um app Node.js sem um arquivo de bloqueio, o App Hosting
não vai conseguir criar e executar o app. Para criar package-lock.json
, execute
npm install
no diretório raiz.
Frameworks com suporte da comunidade
Além do Next.js e do Angular, o App Hosting também é compatível com qualquer framework da Web que possa fornecer uma saída de build correspondente à nossa especificação do pacote de saída. Os autores de frameworks podem aproveitar a especificação do pacote de saída para garantir que o framework seja compatível com o App Hosting. Por exemplo, o popular framework Nuxt é compatível com a equipe do Nitro, que criou um adaptador do Firebase para permitir a implantação de apps Nuxt em App Hosting.
Se você quiser ver outros frameworks compatíveis com App Hosting, crie um adaptador de framework ou entre em contato com os mantenedores do framework para converter saídas de build no formato App Hosting. Os adaptadores do Next.js e do Angular são bons exemplos de referência para quem está criando um adaptador.
Informações sobre frameworks com suporte da comunidade podem ser encontradas em Firebase Open Source. Problemas e solicitações de recursos para frameworks com suporte da comunidade devem ser encaminhados à comunidade de código aberto ou aos autores do framework. Em alguns casos, o Google pode ajudar, mas a comunidade é a primeira linha de suporte para esses adaptadores.
Adaptadores de framework App Hosting
No App Hosting, o suporte para frameworks pré-configurados e com suporte da comunidade é fornecido por adaptadores de framework. Os adaptadores de framework App Hosting têm duas funções principais:
- Eles analisam seu código-fonte e todos os arquivos de configuração específicos da estrutura (como
next.config.js
) e geram um pacote de saída que pode ser processado pelo restante da infraestrutura App Hosting. - Eles executam o comando de build do app para gerar recursos estáticos e criar uma versão otimizada do app para produção.
Os adaptadores de framework criam seu app Node.js com npm run build
, funcionando melhor
com os scripts de build padrão para cada framework: next build
para Next.js e
ng build
para Angular. O App Hosting tentará criar builds com comandos de build
personalizados, mas não pode garantir o sucesso. É possível
substituir scripts de build e execução
em apphosting.yaml
.
A origem dos adaptadores Next.js e Angular está disponível em firebase-framework-tools.
Ambientes de execução para App Hosting
Depois que ele for criado e lançado pelo App Hosting, seu app Node.js será executado em uma revisão Cloud Run. Portanto, a versão de ambiente de execução do app precisa estar dentro do intervalo compatível de Cloud Run e do intervalo do framework da Web escolhido. Para o suporte pré-configurado do Angular e do Next.js, isso significa que as seguintes versões do Node.js são compatíveis:
- Next.js 13.5.x e versões mais recentes
- Angular 18.2.x e versões mais recentes
- Node.js 18 e versões mais recentes
O App Hosting não oferece suporte ativo automático para versões de framework lançadas recentemente. As versões mais recentes que a versão "ativa" designada no momento serão consideradas em estado de "prévia" até serem marcadas oficialmente como "ativas" para App Hosting.
O App Hosting oferece suporte de longo prazo (LTS) para a versão secundária mais recente de uma versão principal por um ano a partir do período de suporte ativo, desde que você atualize consistentemente para as versões de patch mais recentes nessa versão secundária. Consulte as tabelas a seguir para detalhes sobre Next.js e Angular.
Programação de suporte do Next.js
Versão | Status | Suspensão de uso |
---|---|---|
13.5.x | lts | 2026-10-9 |
14.2.x | lts | 2026-10-9 |
15.0.x | ativo | not before 2025-10-9 |
15.1.x | ativo | not before 2025-10-9 |
15.2.x | ativo | - |
Cronograma de suporte do Angular
Versão | Status | Suspensão de uso |
---|---|---|
18.2.x | lts | 2026-10-9 |
19.0.x | ativo | not before 2025-10-9 |
19.1.x | ativo | not before 2025-10-9 |
19.2.x | ativo | - |
Gerenciadores de pacotes
O App Hosting usa buildpacks nativos da nuvem para executar a instalação de dependências e cria o app usando npm, yarn ou pnpm. Outros gerenciadores de pacotes, como o JSR, não são compatíveis.
NPM
- O NPM é o gerenciador de pacotes padrão.
- As dependências de não produção são removidas após a conclusão do build.
- É possível especificar a seção da versão do NPM usando o campo
engines.npm
no arquivopackage.json
.
Lã
- O Yarn é usado quando você inclui o arquivo
yarn.lock
no projeto. - É possível especificar a versão do Yarn a ser usada no campo
engines.yarn
oupackageManager
do arquivopackage.json
. - O App Hosting é compatível com o modo Yarn2 PnP.
Pnpm
- O Pnpm é usado quando você inclui o arquivo
pnpm-lock.yaml
no projeto. - Você pode especificar uma versão do pnpm no campo
engines.pnpm
oupackageManager
do seu arquivopackage.json
. - Para um exemplo prático, confira o sample-node-pnpm. do app.
Monorepos para App Hosting
O App Hosting é compatível com apps baseados em Nx. Consulte Usar monorepos com App Hosting para orientações detalhadas.
As seguintes versões do Nx são compatíveis:
Versão | Status | Suspensão de uso |
---|---|---|
19.5.x | manutenção | 2025-10-9 |
19.6.x | manutenção | 2025-10-9 |
19.7.x | manutenção | 2025-10-9 |
19.8.x | lts | 2026-10-9 |
20.0.x | ativo | not before 2025-10-9 |
20.1.x | ativo | not before 2025-10-9 |
20.2.x | ativo | not before 2025-10-9 |
20.3.x | ativo | not before 2025-10-9 |
20.4.x | ativo | not before 2025-10-9 |
20.5.x | ativo | not before 2025-10-9 |
20.6.x | ativo | not before 2025-10-9 |
20.7.x | ativo | — |
Se você precisar de suporte para outros tipos de espaços de trabalho de monorepo, informe no Firebase UserVoice.