home User Guide Getting Started Help Center Documentation Community Training Certification
Looker keyboard_arrow_down
language keyboard_arrow_down
Introduction to the Looker extension framework

The Looker extension framework is a development framework that significantly reduces the effort and complexity of building custom JavaScript data applications and tools, such as:

Current examples of Looker extensions that are available on the Looker Marketplace include the Looker Data Dictionary and the LookML Diagram.

Why use the extension framework?

Some parts of building web applications are easy and fun, while others are obviously more time-consuming and not exactly fun. The extension framework helps you by streamlining many of these not-so-fun tasks.

The extension framework takes care of some of the more tedious aspects of building a web application so that you can focus on starting development right away. Custom applications and tools created with the extension framework can be accessed from within Looker, allowing Looker to handle the following kinds of functions, such as:

Extension framework features

The Looker extension framework includes the following features:

Extension framework requirements

To develop using the Looker extension framework:

In order to run inside of Looker, every extension, regardless of its function, must include the following elements inside of Looker:

Getting started developing with the Looker extension framework

The easiest way to get started is to first generate a new starter extension from a template, and then customize and add functionality to that starter. This ensures that all configuration and packaging is correct, which can be difficult to do by hand. See the Introduction to building a Looker extension documentation page for instructions on how to create a new Looker project for your extension and generate a starter extension.

For more customized or advanced templates, you can browse the Looker Extension Framework Examples repository. Any extension in that repository can be cloned and repurposed as a starting point for your project.

Once you have created a simple extension and verified that everything is working, you can begin to add additional functionality and customizations: