framework de extensiones de Looker

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

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

Algunos ejemplos actuales de extensiones de Looker que están disponibles en Looker Marketplace incluyen el diccionario de datos y el diagrama de Looker.

¿Por qué usar el framework de extensiones?

Algunas partes de compilar aplicaciones web son fáciles y divertidas, mientras que otras, por supuesto, consumen más tiempo y no son exactamente divertidas. El framework de la extensión te ayuda a optimizar muchas de estas tareas no tan divertidas.

El framework de extensiones se ocupa de algunos de los aspectos más tediosos de compilar 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 extensiones desde Looker, lo que permite que Looker controle los siguientes tipos de funciones, como las siguientes:

Funciones del framework de la extensión

El framework de extensiones de Looker incluye las siguientes funciones:

  • El SDK de la extensión 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 de IU de React precompilados que puedes usar en tus extensiones.
  • El SDK de Embed, una biblioteca que puedes usar para incorporar paneles, vistas y exploraciones en tu extensión. Consulta la extensión del fregadero de cocina para obtener un código de ejemplo. También puedes usar el SDK de Embed para incorporar tu extensión en aplicaciones de terceros. Las cookies deben estar habilitadas en el navegador cuando incorporas exploraciones, vistas 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 las dependencias necesarios, y 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 ayudarte a comenzar rápidamente.
  • La capacidad de acceder a extremos de API de terceros y agregar datos de terceros a tu extensión.
  • La capacidad de crear extensiones de pantalla completa en Looker. Las extensiones de pantalla completa se pueden usar para aplicaciones internas o externas de plataformas.

    En una extensión de pantalla completa, puedes evitar que un conjunto de usuarios navegue a otras partes de Looker desde tu extensión si agregas 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 quieres cobrar por tu extensión, pero debes usar los permisos estándar de Looker para restringir el acceso a quienes nunca deberían poder acceder a una extensión.

  • A partir de Looker 24.0, las extensiones se pueden desarrollar para ejecutarse en una tarjeta en los paneles. Las extensiones que admiten ejecutarse como mosaico o visualización se pueden agregar mientras el panel está en modo de edición o guardarse en un panel como una visualización desde una exploración. Las extensiones también se pueden configurar como mosaicos en los paneles de Looker.

Requisitos del framework de extensiones

Sigue estos pasos para desarrollar con el framework de extensiones de Looker:

Para ejecutarse en Looker, cada extensión, sin importar su función, debe incluir los siguientes elementos en Looker:

  • Un proyecto de LookML con las siguientes características:

  • El archivo de modelo de 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 la extensión de JavaScript 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 esté en la lista de derechos.

    El siguiente es un ejemplo de archivo de manifiesto del 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"
        mount_points: {
          standalone: no
        }
        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 detalles, consulta la página de documentación del parámetro application.

Comienza a desarrollar con el framework de extensiones de Looker

La manera más fácil de comenzar es generar primero una nueva extensión de inicio a partir de una plantilla y, luego, personalizar y agregar funcionalidad a ese activador. Esto garantiza que toda la configuración y el empaquetado sean correctos, lo que puede ser difícil de hacer manualmente. Consulta la página de documentación Crea una extensión de Looker y obtén instrucciones para crear un nuevo proyecto de Looker para tu extensión y generar una extensión inicial.

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

Una vez que hayas creado una extensión simple y verificado que todo funciona, puedes comenzar a agregar funcionalidades y personalizaciones adicionales:

  • Puedes ver una lista de casos de uso comunes con código de ejemplo en la página de documentación de ejemplos de código del marco de trabajo de extensiones de Looker.

  • Consulta el sitio Componentes de IU de Looker y usa nuestra biblioteca de componentes para un desarrollo rápido de IU y diseño.

  • La plantilla de Kitchensink de Looker es una extensión que proporciona ejemplos de una gran variedad de funcionalidades. Puedes usar esta plantilla como enciclopedia o como guía de referencia, pero no como punto de partida ni como plantilla real. Te recomendamos que uses nuestro generador de extensiones o que clones uno de los ejemplos más simples para comenzar.

  • También hay ejemplos de extensiones que pueden usarse como mosaicos de panel. En la extensión de visualización de mosaicos, se muestra cómo compilar una visualización personalizada con el framework de extensiones. La extensión del SDK de tarjetas muestra los métodos de API disponibles que son específicos para las extensiones de tarjetas.