Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

Extensões do Firebase

As extensões do Firebase ajudam a implantar a funcionalidade no seu aplicativo rapidamente com soluções pré-empacotadas.

Depois de instalada, uma extensão do Firebase executa uma tarefa específica ou um conjunto de tarefas em resposta a solicitações HTTPS, eventos do Cloud Scheduler ou para acionar eventos de outros produtos do Firebase, como o Cloud Firestore ou o Firebase Cloud Messaging.

Explore as extensões oficiais do Firebase Saiba como instalar uma extensão

Principais recursos

Reduza o tempo gasto em desenvolvimento, manutenção e crescimento

Como uma extensão é uma solução em pacote, você só precisa instalá-la e configurá-la.

Com as extensões, você não passa tempo pesquisando, escrevendo e depurando o código que implementa a funcionalidade ou automatiza uma tarefa para seu app ou projeto.

Explore a coleção de extensões oficiais do Firebase para encontrar soluções para seu app ou projeto.

Desenvolvido para ser configurável e reutilizável

Cada instância instalada de uma extensão é exclusiva.

Você especifica valores de configuração para a extensão que são exclusivos para seu aplicativo, projeto ou caso de uso. Dependendo do que a extensão faz, esses valores podem ser quase tudo: um caminho do Cloud Firestore, dimensões de imagem ou um URL do GitHub.

A mesma extensão pode ser reutilizada em projetos diferentes. É possível até instalar várias instâncias da mesma extensão em um único projeto. Cada instância instalada pode ter sua própria configuração personalizada.

Integra a plataforma do Firebase

As extensões podem preencher a parte ausente da arquitetura existente.

As extensões podem responder a eventos gerados pelos produtos do Firebase que você já usa no seu aplicativo. Uma alteração em um produto do Firebase pode acionar uma extensão para executar a tarefa, mesmo uma tarefa que esteja usando outro produto. Por exemplo, uma gravação específica do Realtime Database pode acionar o envio de uma nova notificação do Firebase Cloud Messaging.

Uma extensão também pode integrar seu projeto do Firebase com outros produtos do Google Cloud Platform (como o BigQuery e o Google Tradutor) ou até mesmo serviços de terceiros (como Mailchimp e Bit.ly).

E o acionamento de eventos não está limitado aos eventos do Firebase, é possível, até mesmo, acionar uma extensão diretamente com uma solicitação HTTPS ou em um intervalo programado.

Segurança e acesso limitado

A lógica do aplicativo para extensões é executada no back-end, usando o Google Cloud Functions. Portanto, o código é totalmente isolado do cliente.

Além disso, as próprias extensões são isoladas do restante do projeto porque uma extensão instalada tem acesso limitado apenas aos recursos e dados listados claramente antes da instalação.

Manutenção zero

Instale e configure uma extensão para seu projeto do Firebase. Depois disso, o back-end escalona automaticamente os recursos de computação para atender às necessidades da sua extensão.

Você não precisa se preocupar com credenciais, configuração e provisionamento de novos servidores ou desativação dos antigos.

Como funciona?

Basicamente, uma extensão do Firebase é um código que executa uma tarefa sempre que um evento definido especificamente ocorre no seu aplicativo ou projeto.

A lógica de uma extensão é escrita usando o Cloud Functions para Firebase. As funções em uma extensão definem os provedores de eventos e as condições que acionam a execução (por exemplo, uma gravação do Cloud Firestore ou uma solicitação HTTPS ou um evento do Cloud Scheduler).

Mesmo que as extensões usem funções, um recurso importante para diferenciar extensões e funções é que uma extensão depende de um arquivo de especificação extension.yaml, que define explicitamente:

  • Os serviços do Google (APIs) que a extensão usará
  • Os papéis de acesso que a extensão exige para funcionar
  • Os recursos específicos da extensão necessários ao funcionamento dela
  • Os parâmetros configuráveis para a extensão

Você pode instalar uma extensão em um projeto várias vezes, cada uma delas com uma configuração diferente.

Quando você instala uma instância de uma extensão, o Firebase realiza as seguintes ações:

  1. Solicita que você especifique os valores de configuração (parâmetros) necessários a serem usados para essa instância da extensão.
  2. Ativa as APIs listadas a partir do arquivo extension.yaml para o projeto.
  3. Cria uma nova conta de serviço a ser usada por essa instância da extensão e atribui a ela os papéis de acesso listados. A Instância de extensão executa o código usando o acesso concedido a essa conta de serviço.
  4. Provisiona os recursos listados para a instância de extensão, como uma função.

Cada instância instalada de uma extensão tem sua própria conta de serviço e recursos provisionados individualmente.

Além do arquivo extension.yaml, o diretório de extensão também inclui arquivos de instrução, como README, que contêm informações para ajudar você a concluir outras tarefas de configuração ou geralmente usam a extensão.

Após a instalação, você pode reconfigurar uma extensão (especificar novos valores de parâmetro) e atualizar uma extensão para uma versão mais recente. Você também pode desinstalar uma extensão do seu projeto a qualquer momento.

Tanto a Firebase CLI quanto o Console do Firebase permitem que você instale, visualize e gerencie extensões.

Caminho de implementação

Encontrar uma extensão

Explore a coleção de extensões oficiais do Firebase na página do produto Extensões do Firebase.

Instalar e configurar uma extensão

Quando você encontrar uma extensão que resolva uma necessidade no seu aplicativo ou projeto, instale-a por meio do Console do Firebase ou da CLI do Firebase.

Configure a extensão para que ela seja personalizada para seu aplicativo ou projeto.

Gerenciar a extensão

Veja e gerencie a extensão instalada usando o Console do Firebase ou a CLI do Firebase.

Próximas etapas