Extensiones de Firebase

Las Extensiones de Firebase te ayudan a implementar funcionalidades en tu app rápidamente con soluciones ya empaquetadas.

Una vez instalada, una extensión de Firebase realiza una tarea o un conjunto de tareas específicos en respuesta a solicitudes HTTP o a eventos de activación de otros productos de Firebase, como Cloud Firestore o Firebase Cloud Messaging.

Explorar Extensiones de Firebase oficiales Más información sobre cómo instalar una extensión

Funciones clave

Reduce el tiempo dedicado al desarrollo, mantenimiento y crecimiento

Dado que una extensión es una solución empaquetada, solo tienes que instalarla y configurarla.

Con las extensiones, no tienes que invertir tiempo en investigar, escribir y depurar el código que implementa la funcionalidad o automatiza una tarea para tu app o proyecto.

Explora la colección de extensiones oficiales de Firebase para encontrar soluciones para tu app o proyecto.

Compiladas para ser configurables y reutilizables

Cada instalación de una extensión es única.

Debes especificar valores de configuración de la extensión que sean únicos para tu app, proyecto o caso práctico. Según lo que haga la extensión, estos valores podrían ser casi cualquier cosa: una ruta de Cloud Firestore, dimensiones de imagen o una URL de GitHub.

Puedes volver a usar la misma extensión en diferentes proyectos. Incluso puedes instalar varias instancias de la misma extensión en un solo proyecto. Cada instancia instalada puede tener su propia configuración personalizada.

Integra la plataforma de Firebase

Las extensiones pueden llenar esa parte faltante de tu arquitectura.

Las extensiones pueden responder a eventos generados por los productos de Firebase que ya usas en tu app. Un cambio en un producto de Firebase puede ser el activador para que una extensión realice su tarea, incluso una que utilice otro producto. Por ejemplo, una escritura específica de Realtime Database puede activar el envío de una nueva notificación de Firebase Cloud Messaging.

Una extensión también puede integrar tu proyecto de Firebase con otros productos de Google Cloud Platform (como BigQuery y Google Traductor) o incluso servicios de terceros (como Mailchim y Bit.ly).

Además, los eventos de activación no se limitan a los eventos de Firebase; incluso puedes activar una extensión directamente con una solicitud HTTPS.

Seguridad y acceso limitado

La lógica de aplicación para las extensiones se ejecuta en el backend con Google Cloud Functions, por lo que el código está completamente aislado del cliente.

Además, las extensiones se aíslan del resto del proyecto, ya que a las extensiones instaladas solo se les otorga acceso limitado a los recursos y datos que se indican claramente antes de la instalación.

No requieren mantenimiento

Instala y configura una extensión para tu proyecto de Firebase. Después de eso, el backend realiza ajustes automáticos de la escala de los recursos de procesamiento para satisfacer las necesidades de la extensión.

No tendrás que preocuparte por las credenciales, la configuración de servidores, el aprovisionamiento de servidores nuevos ni por sacar de servicio los servidores antiguos.

¿Cómo funciona?

En esencia, una extensión de Firebase es un código que realiza una tarea cada vez que ocurre un evento definido específicamente en tu app o proyecto.

La lógica de una extensión se escribe con Cloud Functions para Firebase. Las funciones en una extensión definen los proveedores de eventos y las condiciones que activan la ejecución (por ejemplo, una escritura de Cloud Firestore o una solicitud HTTPS).

Aunque las extensiones usan funciones, una diferencia clave entre las extensiones y las funciones es que una extensión se basa en un archivo de especificación extension.yaml, el cual define de forma explícita lo siguiente:

  • Los servicios de Google (API) que usará la extensión
  • Las funciones de acceso que requiere la extensión para funcionar
  • Los recursos específicos de la extensión que la extensión requiere para funcionar
  • Los parámetros configurables para la extensión

Cuando instalas una extensión, Firebase hace lo siguiente:

  1. Te solicita que especifiques los valores de configuración necesarios (parámetros) para la extensión.
  2. Habilita las API enumeradas en el archivo extension.yaml.
  3. Crea una cuenta de servicio nueva y le asigna las funciones de acceso enumeradas. La extensión ejecuta su código con el acceso otorgado a esta cuenta de servicio.
  4. Aprovisiona los recursos enumerados para la extensión (por ejemplo, una función).

Además del archivo extension.yaml, el directorio de extensiones también incluye archivos de instrucciones, como README, que contienen información para ayudarte a completar tareas de configuración adicionales o a utilizar la extensión en general.

Después de la instalación, puedes volver a configurar una extensión (especificar valores de parámetros nuevos) y actualizar una extensión a una versión más reciente. También puedes desinstalar una extensión de tu proyecto en cualquier momento.

Firebase CLI y Firebase console te permiten instalar, ver y administrar extensiones.

Ruta de implementación

Buscar una extensión

Explora la colección de extensiones oficiales de Firebase en la página del producto Extensiones de Firebase.

Instalar y configurar una extensión

Cuando encuentres una extensión que resuelva una necesidad en tu app o proyecto, instálala a través de Firebase console o Firebase CLI.

Configura la extensión a fin de que esté personalizada para tu app o proyecto.

Administrar la extensión

Visualiza y administra la extensión instalada con Firebase console o Firebase CLI.

Pasos siguientes