framework d'extension Looker

Le framework d'extension de Looker est un framework de développement qui réduit de manière significative les efforts et la complexité liés au développement d'applications et d'outils de données JavaScript personnalisés, par exemple :

  • Applications de plate-forme interne pour votre entreprise
  • Des plates-formes externes pour vos clients, telles que des portails clients pour les applications d'analyse intégrée créées avec des données dans Looker
  • Outils internes ciblés
  • Applications à intégrer dans des applications externes

Parmi les exemples actuels d'extensions Looker disponibles sur Looker Marketplace, citons le dictionnaire de données Looker et le diagramme LookML.

Pourquoi utiliser le framework d'extension ?

Certains aspects de la création d'applications Web sont simples et amusants, tandis que d'autres sont évidemment plus longs et pas vraiment amusants. Le framework d'extension vous aide à simplifier bon nombre de ces tâches peu amusantes.

Le framework d'extension gère certains des aspects les plus fastidieux de la création d'une application Web, ce qui vous permet de vous concentrer immédiatement sur le développement. Les applications et outils personnalisés créés avec Extension Framework sont accessibles depuis Looker, ce qui permet à Looker de gérer les types de fonctions suivants, tels que:

Fonctionnalités du framework d'extension

Le framework d'extension Looker comprend les fonctionnalités suivantes:

  • Le SDK d'extension Looker, qui fournit des fonctions pour l'accès à l'API publique Looker et pour interagir dans l'environnement Looker.
  • Composants Looker, une bibliothèque de composants d'UI React prédéfinis que vous pouvez utiliser dans vos extensions.
  • Le SDK Embed, une bibliothèque que vous pouvez utiliser pour intégrer des tableaux de bord, des looks et des explorations dans votre extension. Consultez l'extension d'évier de cuisine pour obtenir un exemple de code. Vous pouvez également utiliser le SDK Embed pour intégrer votre extension dans des applications tierces. Les cookies doivent être activés dans le navigateur lorsque vous intégrez des explorations, des présentations ou des tableaux de bord dans une extension.
  • L'utilitaire create-looker-extension, qui crée une extension de base qui inclut tous les fichiers d'extension et les dépendances nécessaires, et que vous pouvez utiliser comme point de départ pour la développer.
  • Notre dépôt d'exemples de frameworks d'extensions Looker, qui comprend des modèles et des exemples d'extensions pour vous aider à démarrer rapidement
  • La possibilité d'accéder à des points de terminaison d'API tierces et d'ajouter des données tierces à votre extension.
  • Possibilité de créer des extensions en plein écran dans Looker Les extensions en plein écran peuvent être utilisées pour les applications internes ou externes de la plate-forme.

    Dans une extension en plein écran, vous pouvez empêcher un ensemble d'utilisateurs d'accéder à d'autres parties de Looker à partir de votre extension en ajoutant les utilisateurs à un groupe d'utilisateurs "Extensions uniquement". Vous pouvez également supprimer la barre de navigation Looker en remplaçant /extensions par /spartan dans l'URL de l'extension.

  • Possibilité de configurer une clé d'accès pour votre extension afin que les utilisateurs doivent la saisir pour exécuter l'extension Cette option est utile si vous souhaitez facturer votre extension. Toutefois, vous devez utiliser les autorisations Looker standards pour limiter l'accès à ceux qui ne devraient jamais pouvoir accéder à une extension.

  • À partir de la version 24.0 de Looker, les extensions peuvent être développées pour s'exécuter dans une carte de tableau de bord. Les extensions qui peuvent être exécutées en tant que vignette ou visualisation peuvent être ajoutées lorsque le tableau de bord est en mode Édition ou enregistrées dans un tableau de bord en tant que visualisation à partir d'une exploration. Les extensions peuvent également être configurées en tant que cartes dans les tableaux de bord LookML.

Exigences du framework d'extension

Pour développer à l'aide du framework d'extension Looker :

  • Vous aurez besoin d'autorisations de développeur LookML pour votre instance.
  • Votre administrateur Looker doit activer la fonctionnalité Extension Framework.
  • Nous vous recommandons de vous familiariser avec JavaScript ou TypeScript.
  • Nous recommandons le développement dans React, même s'il existe un SDK d'extension pour le code JavaScript brut.

Pour s'exécuter dans Looker, chaque extension, quelle que soit sa fonction, doit inclure les éléments suivants dans Looker :

  • Un projet LookML qui :

  • Le fichier de modèle LookML nécessite un paramètre connection qui pointe vers une connexion à la base de données valide sur votre instance.

  • Le fichier manifeste du projet nécessite un paramètre application. Le paramètre application attribue un libellé à l'extension, indique à Looker où trouver le code JavaScript de l'extension et fournit une liste des droits d'accès pour l'extension. Les droits d'accès définissent les ressources Looker auxquelles l'extension peut accéder. L'extension ne pourra pas accéder à une ressource Looker, sauf si elle est listée dans les droits d'accès.

    Voici un exemple de fichier manifeste de projet avec un paramètre 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: []
        }
      }
    

    Pour en savoir plus, consultez la page de documentation du paramètre application.

Premiers pas avec le développement avec le framework d'extension Looker

Pour commencer, le plus simple est de générer une nouvelle extension de démarrage à partir d'un modèle, puis de la personnaliser et d'y ajouter des fonctionnalités. Cela garantit que toutes les configurations et tous les packagings sont corrects, ce qui peut être difficile à faire à la main. Consultez la page de documentation Créer une extension Looker pour savoir comment créer un projet Looker pour votre extension et générer une extension de démarrage.

Pour obtenir des modèles plus personnalisés ou avancés, vous pouvez parcourir le dépôt d'exemples de framework d'extension Looker. Vous pouvez cloner et réutiliser n'importe quelle extension de ce dépôt comme point de départ pour votre projet.

Une fois que vous avez créé une extension simple et vérifié que tout fonctionne correctement, vous pouvez commencer à ajouter des fonctionnalités et des personnalisations supplémentaires:

  • Vous trouverez une liste de cas d'utilisation courants avec des exemples de code sur la page de documentation Exemples de code du framework d'extension Looker.

  • Consultez le site Composants d'interface utilisateur Looker pour utiliser notre bibliothèque de composants afin de développer rapidement l'UI et la mise en page.

  • Le modèle Looker Extension Kitchensink fournit des exemples de nombreuses fonctionnalités d'extension. Vous pouvez utiliser ce modèle comme encyclopédie ou guide de référence, mais pas comme point de départ ni comme modèle. Nous vous recommandons d'utiliser notre générateur d'extensions ou de cloner l'un des exemples les plus simples pour commencer.

  • Des exemples d'extensions pouvant être utilisées comme cartes de tableau de bord sont également disponibles. L'extension de visualisation des cartes montre comment créer une visualisation personnalisée à l'aide du framework d'extension. L'extension du SDK Tile affiche les méthodes d'API disponibles spécifiques aux extensions de cartes.