Présentation du framework de l'extension Looker

Le framework d'extension Looker est un framework de développement qui réduit considérablement les efforts et la complexité liés à la création d'applications et d'outils de données JavaScript personnalisés, tels que:

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

Les exemples actuels d'extensions Looker disponibles sur Looker Marketplace incluent le dictionnaire de données Looker et le diagramme LookML.

Pourquoi utiliser le framework d'extension ?

Certaines parties de la création d'applications Web sont faciles et amusantes, tandis que d'autres sont manifestement plus chronophages et moins amusantes. Le framework d'extension vous aide à simplifier bon nombre de ces tâches moins amusantes.

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

Fonctionnalités du framework d'extension

Le framework de l'extension Looker inclut les fonctionnalités suivantes:

  • Le SDK d'extension Looker, qui fournit des fonctions permettant d'accéder à l'API publique Looker et d'interagir avec l'environnement Looker.
  • Composants Looker : une bibliothèque de composants d'interface utilisateur React prédéfinis que vous pouvez utiliser dans vos extensions.
  • Le SDK Embed, une bibliothèque qui vous permet d'intégrer des tableaux de bord, des styles et des éléments à 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 styles ou des tableaux de bord à une extension.
  • L'utilitaire create-looker-extension, qui crée une extension de base qui inclut tous les fichiers et dépendances d'extension nécessaires, et que vous pouvez utiliser comme point de départ.
  • Notre dépôt contenant des exemples d'extensions Looker, qui comprend des modèles et des exemples d'extensions, vous aidera à démarrer rapidement.
  • 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 plein écran dans Looker Les extensions plein écran peuvent être utilisées pour les applications internes ou externes à la plate-forme.

    Dans une extension plein écran, vous pouvez empêcher un ensemble d'utilisateurs d'accéder à d'autres parties de Looker à partir de votre extension en ajoutant des 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 saisir une clé pour exécuter l'extension Cette fonctionnalité est utile si vous souhaitez facturer votre extension, mais vous devez utiliser les autorisations Looker standards pour interdire l'accès à ceux qui ne doivent jamais avoir accès à une extension.

Exigences relatives au framework d'extension

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

  • Vous aurez besoin des 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, bien qu'il existe un SDK d'extension pour le code JavaScript brut.

Pour pouvoir 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éfinissent les ressources Looker auxquelles l'extension peut accéder. L'extension ne pourra pas accéder à une ressource Looker, sauf si cette ressource est répertorié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"
    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 sur le paramètre application.

Premiers pas avec le framework d'extension Looker

Pour commencer, la méthode la plus simple consiste à générer une nouvelle extension de démarrage à partir d'un modèle, puis à la personnaliser et à y ajouter des fonctionnalités. Cela permet de s'assurer que la configuration et le packaging sont corrects, ce qui peut être difficile à effectuer à la main. Consultez la page de présentation de la création d'une extension Looker pour savoir comment créer un projet Looker pour votre extension et générer une extension de démarrage.

Pour des modèles plus personnalisés ou avancés, vous pouvez parcourir le dépôt d'exemples Looker Framework Framework. Toute extension de ce dépôt peut être clonée et réutilisée comme point de départ de votre projet.

Une fois que vous avez créé une extension simple et vérifié que tout fonctionne, vous pouvez 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 de l'extension Looker.

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

  • Le modèle Kitchensink d'extension Looker fournit des exemples d'une grande variété de 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 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.