Introducción al framework de extensiones de Looker

El framework de la extensión de Looker pronto usará un nuevo mecanismo de carga. El nuevo cargador puede provocar errores cuando se cargan las extensiones existentes. Para obtener instrucciones sobre cómo probar las extensiones con el cargador nuevo antes de que se active oficialmente en los entornos de Looker, consulte el artículo Cómo probar el nuevo cargador de marco de trabajo de extensiones en el Centro de ayuda de Looker.

El marco de trabajo de extensiones de Looker es un marco de desarrollo que reduce significativamente el esfuerzo y la complejidad de compilar aplicaciones y herramientas de datos de JavaScript personalizadas, como las siguientes:

  • Aplicaciones de plataforma interna para su empresa
  • Plataformas externas para tus clientes, como portales de clientes para aplicaciones de estadísticas incorporadas creadas con datos en Looker
  • Herramientas internas orientadas
  • Aplicaciones para incorporaciones en aplicaciones externas

Los ejemplos actuales de extensiones de Looker disponibles en Looker Marketplace incluyen el Diccionario de datos de Looker y el Diagrama de LookML.

¿Por qué usar el framework de extensiones?

Algunas partes de la creación de aplicaciones web son fáciles y divertidas, mientras que otras obviamente llevan más tiempo y no son exactamente divertidas. El framework de extensiones te ayuda a optimizar muchas de estas tareas no tan divertidas.

El framework de extensiones se encarga de algunos de los aspectos más tediosos de la compilación de una aplicación web, de modo que puedas enfocarte en iniciar el desarrollo de inmediato. Se puede acceder a las aplicaciones y herramientas personalizadas creadas con el framework de extensión desde Looker, lo que permite que Looker maneje los siguientes tipos de funciones, como las siguientes:

Características del framework de extensiones

El framework de la extensión de Looker incluye las siguientes características:

  • El SDK de extensiones de Looker, que proporciona funciones para el acceso a la API pública de Looker y para interactuar dentro del entorno de Looker
  • Componentes de Looker, una biblioteca de componentes prediseñados de la IU de React que puedes usar en tus extensiones.
  • El SDK de inserción, una biblioteca que puedes usar para incorporar paneles, apariencias y exploraciones en tu extensión. Consulta la extensión del receptor de cocina para ver el código de ejemplo. También puedes utilizar el SDK de inserción para insertar tu extensión en aplicaciones de terceros. Las cookies deben habilitarse en el navegador cuando incorporas Explorar, Apariencia o paneles en una extensión.
  • La utilidad create-looker-extension, que crea una extensión básica que incluye todos los archivos de extensión y dependencias necesarios, que puedes usar como punto de partida para compilar.
  • Nuestro repositorio de ejemplos del marco de trabajo de extensiones de Looker, que incluye plantillas y extensiones de muestra para ayudarlo a comenzar rápidamente.
  • La capacidad de acceder a extremos de API de terceros y agregar datos de terceros a su extensión
  • La capacidad de crear extensiones de pantalla completa dentro de Looker Las extensiones de pantalla completa se pueden usar para aplicaciones internas o externas de la plataforma.

    En una extensión de pantalla completa, puede evitar que un conjunto de usuarios navegue a otras partes de Looker desde su extensión si agrega usuarios a un grupo de usuarios Solo extensiones. También puedes quitar la barra de navegación de Looker si reemplazas /extensions por /spartan en la URL de la extensión.

  • La capacidad de configurar una clave de acceso para tu extensión, de modo que los usuarios deban ingresar una clave para ejecutarla Esto es útil si deseas cobrar por tu extensión, pero debes usar permisos estándar de Looker para limitar el acceso a aquellos que nunca deberían poder acceder a una extensión.

Requisitos del marco de trabajo de extensiones

Sigue estos pasos para desarrollar con el framework de extensión de Looker:

- Necesitas permisos de desarrollador de LookML para tu instancia.

Para ejecutarse en Looker, todas las extensiones, sin importar su función, deben incluir los siguientes elementos dentro de Looker:

  • Un proyecto de LookML que realice lo siguiente:

  • El archivo del modelo LookML necesita un parámetro connection que apunte a una conexión de base de datos válida en tu instancia.

  • El archivo de manifiesto del proyecto requiere un parámetro application. El parámetro application le asigna una etiqueta a la extensión, le indica a Looker dónde encontrar el código JavaScript de la extensión y proporciona una lista de derechos para la extensión. Las autorizaciones definen los recursos de Looker a los que puede acceder la extensión. La extensión no podrá acceder a un recurso de Looker, a menos que ese recurso se incluya en las autorizaciones. El siguiente es un ejemplo de archivo de manifiesto de proyecto con un parámetro application:

  project_name: "super_duper_extension"
  application: super_duper_extension {
    label: "Super Duper Extension"
    url: "http://localhost:8080/dist/bundle.js"
    entitlements: {
      local_storage: no
      navigation: no
      new_window: no
      new_window_external_urls: []
      use_form_submit: yes
      use_embeds: no
      use_downloads: no
      core_api_methods: []
      external_api_urls: []
      oauth2_urls: []
      scoped_user_attributes: []
      global_user_attributes: []
    }
  }

Para obtener más información, consulta la página de documentación del parámetro application.

Comienza a desarrollar con el marco de trabajo de extensiones de Looker

La manera más fácil de comenzar es generar primero una nueva extensión para principiantes a partir de una plantilla y, luego, personalizarla y agregarle funcionalidad. Esto garantiza que toda la configuración y el empaquetado sean correctos, lo que puede ser difícil de hacer a mano. Consulta la página de documentación Introducción a la compilación de una extensión de Looker para obtener instrucciones sobre cómo crear un proyecto de Looker nuevo para tu extensión y generar una extensión inicial.

Para obtener plantillas más avanzadas o personalizadas, puede explorar el repositorio de ejemplos del marco de trabajo de extensiones de Looker. Cualquier extensión de ese repositorio se puede clonar y reutilizar como punto de partida para tu proyecto.

Una vez que haya creado una extensión simple y verificado que todo funciona, puede comenzar a agregar funciones y personalizaciones adicionales:

  • Puede ver una lista de casos prácticos comunes con código de ejemplo en la página de documentación Ejemplos de código del marco de trabajo de extensión de Looker.

  • Consulta el sitio de los componentes de la IU de Looker para usar nuestra biblioteca de componentes a fin de desarrollar la IU y el diseño rápidamente.

  • La Plantilla de extensión de cocina de Looker es una extensión que proporciona ejemplos de una gran variedad de funciones de extensión. Puedes usar esta plantilla como una enciclopedia o guía de referencia, pero no como punto de partida o plantilla real. Le recomendamos que utilice nuestro generador de extensiones o que clone uno de los ejemplos más simples para comenzar.