Skip to main content

Jupyter Storage Explorer launcher

PyPI - Version

Adds Storage Explorer to JupyterLab's launcher (section Other) and command palette. It opens Jupyter Storage Explorer in its own tab, on the folder JupyterLab's file browser shows.

The Storage Explorer item in JupyterLab's launcher

It also adds a side panel, a narrow explorer next to your notebooks:

  • Open it with the Storage Explorer icon in the left side bar.
  • The same storages as the tab; a folder's list, without the tree or the preview panel.
  • Files you view (View, a double-click) open in new tabs.
  • The filter button, left of ⚙, shows the filter.
The side panel in JupyterLab's left side bar, a Parquet file selected, beside the tab its View button opened in the data browser

It also integrates every Storage Explorer, in its tab or in a notebook, with JupyterLab:

  • Drag and drop: drag files onto JupyterLab's file browser to download them there.
  • Open files in a tab: double-click a file to open it in JupyterLab's own editor or viewer; Save writes it back to the storage.
  • View in a new tab: open a table in the data browser, or another view (text, an image, ...), in a tab of its own.

Installation

pip install "jupyter-storage-explorer-launcher[polars]"

The launcher has the same extras as jupyter-storage-explorer (Installation), of two kinds:

  • Full extras, e.g. [polars]: the plugin and the libraries it uses.
  • Support-only extras, e.g. [polars-support]: the plugin alone, using the libraries already installed. Nothing else is installed or upgraded.
Full extra Support-only extra Plugin
polars polars-support Polars: Delta Lake, Parquet, CSV, JSON Lines, Excel
pandas pandas-support pandas: Parquet, CSV, JSON Lines, Excel
pyspark pyspark-support PySpark or Databricks Connect: Delta Lake, Parquet, CSV, JSON Lines
abfs abfs-support Azure Data Lake Storage Gen2
all all-supports All of the above

Full extras are handy for a quick try. Support-only extras are highly recommended for an IPython kernel whose data access packages are carefully installed and configured (e.g. a shared JupyterHub image): the plugins use what is there and never change it.

pip install "jupyter-storage-explorer-launcher[all-supports]"  # every plugin, with the libraries you have

Install it in the environment of JupyterLab and of the default kernel (on JupyterHub, usually the single-user image), then restart JupyterLab. Requires JupyterLab 4.0 or later.

Or from JupyterLab itself, without a terminal: run this in a notebook, then reload the page (no restart needed):

%pip install "jupyter-storage-explorer-launcher[polars]"

This works when the notebook's kernel runs in JupyterLab's own environment, as the default kernel usually does.

Then see Using the explorer.

Configuration

Click the ⚙ button at the right of the tab's toolbar, then Edit configuration.

The settings menu (a gear) after Unsafe mode in the tab's toolbar: Edit configuration and About

It opens your settings, a Python file (launcher.py), in JupyterLab's editor; if you have none, it offers to create one from a template with an example of each setting.

launcher.py, created from the template, open in JupyterLab's editor beside the Storage Explorer tab

Uncomment and edit the settings you need, then save. Reload the web browser, then open the explorer tab again to apply the changes.

For example, to open each tab on the data lake and the folder it starts on, with a preview at once:

def filesystems():
    return {
        "Here": ".",  # the folder the tab opens on
        "Data lake": "abfs://lake@myaccount.dfs.core.windows.net",
    }


def parameters():
    return {"preview_panel": "open"}

The file has some of these functions, all optional:

Function Returns
filesystems() {name: URL or fsspec filesystem}
plugin_options() The plugins' options, by key, e.g. {"pandas-support": {"enabled": False}} (Plugins)
format_options() The libraries' options, by library and format (Format options)
transfer_policy() Rules of a transfer policy
parameters() Other StorageExplorer arguments (StorageExplorer options), e.g. {"engine_preference": ["pandas"]}

The side panel uses the same settings, except its own layout: height, tree_view, preview_panel and layout are not taken from parameters() there.

For extending the explorer in Python (Developing plugins), tried before the defaults: supports() (FormatSupport: formats and the libraries handling them), operations() (FileSystemOperations) and filesystem_mappers() (FileSystemMapper).

Other configuration files

Your files are in Jupyter's configuration directory, which jupyter --config-dir prints: ~/.jupyter by default (on Windows, %USERPROFILE%\.jupyter), or $JUPYTER_CONFIG_DIR where that is set. launcher.py is in its storage-explorer folder.

Icons

To change the explorer's icons, use JupyterLab's custom.css (see Icons), which applies to the launcher's tabs and to explorers in notebooks alike.

Bookmarks and query settings

The tabs share bookmarks and the data browser's query settings in storage-explorer/states.json in the same directory, unless parameters() sets states (another file's path, or None: in each tab's memory).

Layers of the configuration file

Administrators can set up the tab for everyone: a storage-explorer/launcher.py in any of Jupyter's configuration directories (jupyter --paths, config section) is read, e.g. /etc/jupyter/storage-explorer/launcher.py for the whole system or <environment>/etc/jupyter/storage-explorer/launcher.py for one Python environment (e.g. a JupyterHub image). Each file is a layer, applied from the system's to the user's, so users' files usually come last. A later layer changes an earlier one's settings this way:

Function Merged with earlier layers
filesystems() By name: added or replaced; None removes one
plugin_options() By plugin, then option
parameters() By name
format_options() By library, format, then option
supports(), operations(), filesystem_mappers() Later layers' first, all before the defaults
transfer_policy() Later layers' rules first, so they decide first

final() returns the settings later layers cannot change: function names (except parameters) and parameter names. For example, /etc/jupyter/storage-explorer/launcher.py:

def filesystems():
    return {
        "Here": ".",
        "Data lake": "abfs://lake@myaccount.dfs.core.windows.net",
    }


def transfer_policy():
    # No downloads from the lake to users' computers or to the Jupyter server.
    return [
        {"rule": "deny", "src": r"abfs://lake@.*", "dest": "browser:///.*"},
        {"rule": "deny", "src": r"abfs://lake@.*", "dest": "jupyterlab://.*"},
    ]


def final():
    return ["filesystems", "transfer_policy"]  # users cannot change these

Final settings are not a security boundary: users can still create explorers in notebooks.

Metadata

Release files for jupyter-storage-explorer-launcher 0.17.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jupyter-storage-explorer-launcher 0.17.0
File Size Uploaded Provenance
jupyter_storage_explorer_launcher-0.17.0.tar.gz 480.5 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for jupyter-storage-explorer-launcher 0.17.0
File Interpreter ABI Platform
jupyter_storage_explorer_launcher-0.17.0-py3-none-any.whl Python 3 none any Details

Total release size: 527.9 kB

Release files / jupyter_storage_explorer_launcher-0.17.0.tar.gz

Download URL jupyter_storage_explorer_launcher-0.17.0.tar.gz
Size 480.5 kB
Tags Source
SHA-256 checksum
How to use checksums
97616dfb62aa073842e0e75a52e60417940f84dc763b18fa6a92e94fd24e0e2c
BLAKE2b-256 checksum
How to use checksums
4657ab2b7de1391f85949aca8b87ab726c3eaac5795958037e39e278fda0dcd2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / jupyter_storage_explorer_launcher-0.17.0-py3-none-any.whl

Download URL jupyter_storage_explorer_launcher-0.17.0-py3-none-any.whl
Size 47.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7c2a00abbd11241c8dde45a33834357c9d3e261b6618c05504e457c60f6ecdb2
BLAKE2b-256 checksum
How to use checksums
9e3b5a3760ec213fc6383b1aae2bb14e8036d736bd1c67930d1e914e89298502
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Security for jupyter-storage-explorer-launcher 0.17.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for jupyter_storage_explorer_launcher-0.17.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.17.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page