Introdução ao framework da extensão do Looker

O framework de extensão do Looker é um framework de desenvolvimento que reduz significativamente o esforço e a complexidade da criação de aplicativos e ferramentas de dados JavaScript personalizados, como:

  • Aplicativos de plataforma internos para sua empresa
  • Plataformas externas para os clientes, como portais de clientes para aplicativos de análise incorporados criados com dados no Looker
  • Ferramentas internas segmentadas
  • Aplicativos para incorporação em aplicativos externos

Os exemplos atuais de extensões do Looker disponíveis no Looker Marketplace incluem o Dicionário de dados e o Diagrama do LookML.

Por que usar o framework de extensões?

Algumas partes da criação de aplicativos da Web são fáceis e divertidas, enquanto outras obviamente são mais demoradas e não exatamente divertidas. O framework de extensões ajuda a simplificar muitas tarefas não tão divertidas.

A estrutura da extensão cuida de alguns dos aspectos mais tediosos da criação de aplicativos da Web para que você possa se concentrar em iniciar o desenvolvimento imediatamente. Aplicativos e ferramentas personalizados criados com o framework de extensão podem ser acessados de dentro do Looker, permitindo que ele execute os seguintes tipos de funções, como:

Recursos do framework de extensão

O framework de extensão do Looker inclui os seguintes recursos:

  • O SDK da extensão Looker, que fornece funções para acesso à API pública do Looker e para interação no ambiente do Looker.
  • O Looker, uma biblioteca de componentes pré-criados da IU do React que você pode usar nas suas extensões.
  • O SDK incorporado, uma biblioteca que você pode usar para incorporar painéis, visuais e explorações à sua extensão. Consulte a extensão de coletor da cozinha para ver um exemplo de código. Também é possível usar o SDK incorporado para incorporar sua extensão em aplicativos de terceiros. Os cookies precisam estar ativados no navegador quando você estiver incorporando "Explorar", "Aparência" ou "Painéis" em uma extensão.
  • O utilitário create-looker-extension, que cria uma extensão básica que inclui todos os arquivos e dependências de extensão necessários e pode ser usado como ponto de partida.
  • Nosso repositório de exemplos de framework da extensão do Looker, que inclui modelos e extensões de amostra para ajudar você a começar rapidamente.
  • A capacidade de acessar endpoints de APIs de terceiros e adicionar dados de terceiros à sua extensão.
  • A capacidade de criar extensões de tela cheia no Looker. Extensões de tela cheia podem ser usadas para aplicativos de plataforma internos ou externos.

    Em uma extensão de tela cheia, é possível impedir que um grupo de usuários navegue para outras partes do Looker a partir da sua extensão adicionando usuários a um grupo somente de extensões. Também é possível remover a barra de navegação do Looker substituindo /extensions por /spartan no URL da extensão.

  • Configure uma chave de acesso para que a extensão gere uma chave que possa ser executada pelo usuário. Isso é útil se você quer cobrar pela sua extensão, mas deve usar permissões padrão do Looker para bloquear o acesso às pessoas que nunca devem ter acesso a uma extensão.

Requisitos do framework de extensão

Para desenvolver usando o framework de extensão do Looker:

  • Você precisará de permissões de desenvolvedor do LookML para sua instância.
  • Seu administrador do Looker precisa ativar o recurso Framework da extensão.
  • Recomendamos que você tenha familiaridade com JavaScript ou TypeScript.
  • Recomendamos o desenvolvimento no React, embora exista um SDK de extensão para JavaScript bruto.

Para ser executada no Looker, cada extensão, independentemente da função, precisa incluir os seguintes elementos no Looker:

  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 mais detalhes, consulte a página de documentação do parâmetro application.

Como começar a desenvolver com o framework de extensões do Looker

A maneira mais fácil de começar é gerar primeiro uma nova extensão inicial a partir de um modelo e, em seguida, personalizar e adicionar funcionalidades a esse inicializador. Isso garante que toda a configuração e o empacotamento estejam corretos, o que pode ser difícil de fazer manualmente. Consulte a página de documentação Introdução à criação de uma extensão do Looker para ver instruções sobre como criar um novo projeto do Looker para sua extensão e gerar uma extensão inicial.

Para ver modelos mais personalizados ou avançados, consulte o repositório de exemplos de framework da extensão do Looker. Qualquer extensão nesse repositório pode ser clonada e reaproveitada como um ponto de partida para seu projeto.

Depois de criar uma extensão simples e verificar se tudo está funcionando, você poderá adicionar outras funcionalidades e personalizações:

  • Veja uma lista de casos de uso comuns com códigos de exemplo na página Exemplos de código do framework de extensão do Looker.

  • Consulte o site Componentes de IU do Looker para usar nossa biblioteca de componentes e desenvolver rapidamente a IU e o layout.

  • O Looker Extension Kitchensink Template é uma extensão que fornece exemplos de várias funcionalidades. Você pode usar esse modelo como uma enciclopédia ou um guia de referência, mas não como um ponto de partida ou um modelo real. Recomendamos que você use nosso gerador de extensões ou clone um dos exemplos mais simples para começar.