Skip to article frontmatterSkip to article content

πŸ” Vocabulary

Extension
The end-user-installable delivery mechanism or container for plugins. An extension is a collection of 1 or more plugins. It’s very common for frontend extensions and server extensions to be bundled together as one extension (in fact, we’ll do that as part of this workshop). See the official docs for more!
Core extension
JupyterLab is composed of modular extensions. Core extensions are included with JupyterLab.
Server extension
An extension which provides new functionality on the back-end. Unlike frontend extensions, server extensions have access to the computer JupyterLab is running on, for example to read files from disk. See the official docs for more!
Frontend extension
An extension which modifies the user interface and/or adds functionality that executes solely in the browser, and interacts with existing JupyterLab frontend components. This includes themes, UI elements, viewers, code editors, and more. They are built with Lumino and/or React components. Many frontend extensions are part of a larger extension with a server extension component.
Plugin
The atomic building blocks of JupyterLab architecture and JupyterLab extensions. Every extension includes >= 1 plugin. In a technical sense, a plugin is a JavaScript object with certain metadata fields. See the official docs for more!
Widget
User interface elements that can be displayed by users or by JupyterLab internals. Widgets are provided by plugins.
Kernel
A computational engine that executes code in a specific programming language. It runs on the server, maintains runtime state (variables, imports, etc.), and returns results back to the frontend.
Token
A JavaScript singleton provided by and uniquely identifying a plugin (using the provides metadata field on the plugin object), and can be depended on by other plugins (using the requires or optional metadata fields on the plugin object). See the official docs for more!
Menu bar
Top-level menu which exposes context-specific commands.
Main area
The central space where JupyterLab displays main area widgets, like Notebooks. You can recognize the main area by the tab panel. You can click and drag the tab at the top of any main area widget to subdivide the main area arbitrarily!
Main area widget
A widget which opens as a tab or panel in the Main area. For example, the launcher, the Jupyter Notebook editor, the code editor, or the terminal.
Status bar
Displays various information about the current session, like the number of running kernels.
Side panel
Contains extra utilities, like the file browser and debugger. The left and right side panels are just containers; objects can be moved between them freely.
Command
A behavior that can be triggered from the JupyterLab interface. For example, from the Menu bar. See the official docs for more!
Command palette
A keyboard-driven interface for triggering commands. See the official docs for more!
Launcher
When a new JupyterLab tab is opened, the launcher is displayed. It includes categorized buttons to launch any applications that are registered with the launcher. See the official docs for more!