O framework de extensões 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 interna para sua empresa
- Plataformas externas para seus clientes, como portais de clientes para aplicativos de análise incorporada 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 Marketplace do Looker incluem o dicionário de dados do Looker 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 são obviamente mais demoradas e não exatamente divertidas. O framework de extensões ajuda você a simplificar muitas dessas tarefas não tão divertidas.
O framework de extensões cuida de alguns dos aspectos mais tediosos da criação de um aplicativo da Web para que você possa começar o desenvolvimento imediatamente. Aplicativos e ferramentas personalizados criados com o framework de extensões podem ser acessados no Looker, permitindo que o Looker processe os seguintes tipos de funções, como:
- Autenticação: permite usar as opções de autenticação atuais do Looker para fazer login (como login com senha, LDAP, SAML e OpenID Connect).
- Controle de acesso e gerenciamento de permissões.
- Acesso à API: permite usar outros recursos comuns de desenvolvedor, como endpoints de API de terceiros, no Looker.
Recursos do framework de extensões
O framework de extensões do Looker inclui os seguintes recursos:
- O SDK de extensões do Looker, que fornece funções para acesso à API pública do Looker e para interação no ambiente do Looker.
- Componentes do Looker, uma biblioteca de componentes de interface do React pré-criados que podem ser usados nas extensões.
- O SDK de incorporação, uma biblioteca que pode ser usada para incorporar painéis, Looks e Análises na extensão. Consulte a extensão de exemplo para ver o código de exemplo. Também é possível usar o SDK de incorporação para incorporar a extensão em aplicativos de terceiros. Os cookies precisam estar ativados no navegador ao incorporar Análises, Looks ou painéis em uma extensão.
- O
create-looker-extensionutilitário, que cria uma extensão básica que inclui todos os arquivos e dependências necessários e pode ser usado como ponto de partida para criar. - Nosso repositório de exemplos do framework de extensões do Looker, que inclui modelos e extensões de exemplo para ajudar você a começar rapidamente.
- A capacidade de acessar endpoints de API de terceiros e adicionar dados de terceiros à extensão.
A capacidade de criar extensões de tela cheia no Looker. As extensões de tela cheia podem ser usadas para aplicativos de plataforma interna ou externa.
Em uma extensão de tela cheia, é possível impedir que um conjunto de usuários navegue para outras partes do Looker na extensão adicionando usuários a um grupo de usuários somente de extensões. Também é possível remover a barra de navegação do Looker substituindo
/extensionspor/spartanno URL da extensão.A capacidade de configurar uma chave de acesso para a extensão para que os usuários precisem inserir uma chave para executar a extensão. Isso é útil se você quiser cobrar pela extensão, mas use as permissões padrão do Looker para restringir o acesso àqueles que nunca devem acessar uma extensão.
A partir do Looker 24.0, as extensões podem ser desenvolvidas para serem executadas em um bloco nos painéis. As extensões que oferecem suporte à execução como um bloco ou visualização podem ser adicionadas enquanto o painel está no modo de edição ou salvas em um painel como uma visualização de uma Análise. As extensões também podem ser configuradas como blocos em painéis do LookML.
Requisitos do framework de extensões
Para desenvolver usando o framework de extensões do Looker:
- Você precisa de permissões de desenvolvedor do LookML para sua instância.
- O administrador do Looker precisa ativar o recurso Framework de extensões.
- Recomendamos familiaridade com JavaScript ou TypeScript.
- Recomendamos o desenvolvimento no React, embora haja um SDK de extensão para JavaScript bruto.
Para ser executada no Looker, toda extensão, independente da função, precisa incluir os seguintes elementos no Looker:
Um projeto do LookML que atenda a estes requisitos:
- Inclui um arquivo modelo
- Inclui um arquivo de manifesto do projeto
- Está conectado a um repositório Git
O arquivo de modelo do LookML precisa de um
connectionparâmetro que aponte para uma conexão de banco de dados válida na sua instância.O arquivo de manifesto do projeto exige um
applicationparâmetro. O parâmetroapplicationfornece um rótulo à extensão, informa ao Looker onde encontrar o JavaScript da extensão e fornece uma lista de direitos para a extensão. Os direitos definem os recursos do Looker que a extensão pode acessar. A extensão não poderá acessar um recurso do Looker, a menos que ele esteja listado nos direitos.Confira a seguir um exemplo de arquivo de manifesto do projeto com um 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 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 uma nova extensão inicial de um modelo e, em seguida, personalizar e adicionar funcionalidades a ela. Isso garante que toda a configuração e o pacote estejam corretos, o que pode ser difícil de fazer manualmente. Consulte a página de documentação Criar uma extensão do Looker para instruções sobre como criar um novo projeto do Looker para sua extensão e gerar uma extensão inicial.
Para modelos mais personalizados ou avançados, navegue pelo repositório de exemplos de framework de extensões do Looker. Qualquer extensão nesse repositório pode ser clonada e reutilizada como ponto de partida para seu projeto.
Depois de criar uma extensão básica e verificar se tudo está funcionando, você pode começar a adicionar mais funcionalidades e personalizações:
Você pode conferir uma lista de casos de uso comuns com exemplos de código na página de documentação Exemplos de código do framework de extensões do Looker.
Consulte o site de componentes da interface do Looker para usar nossa biblioteca de componentes para desenvolvimento rápido UI e layout.
O modelo de exemplo de extensão do Looker é uma extensão que fornece exemplos de uma grande variedade de funcionalidades de extensão. 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 básicos para começar.
Exemplos de extensões que podem ser usadas como blocos de painel também estão disponíveis. A extensão de visualização de blocos mostra como criar uma visualização personalizada usando o framework de extensões. A extensão do SDK de blocos mostra os métodos de API disponíveis que são específicos para extensões de blocos.