Jupyter Storage Explorer
Explore your data lake without leaving Jupyter: built for data professionals
StorageExplorer is a file explorer for cloud storage and data lakes, right inside your Jupyter notebook, in the
spirit of Azure Storage Explorer.
Browse Amazon S3, Azure Data Lake / Blob Storage, Google Cloud Storage, local disks and more; preview Parquet files, Delta Lake tables, CSV, Excel, JSON and other formats; page through, sort and filter tables; get ready-to-run code that loads the data into your notebook; and upload, download, move and edit files without leaving JupyterLab. See Using the explorer for all you can do with it.
This package also provides the DataExplorer widget, which lets you browse tabular data in your notebook: any
dataframe of pandas, polars, Spark, DuckDB and more. Page through, sort and filter it in the widget, then get the
result back in code.
See Using the data browser
for all you can do with it.
Highlights
StorageExplorer: any fsspec storage, several in one explorer; copy and paste between storages and notebooks.DataExplorer: page, sort and filter any dataframe; get the result back in code.- Previews of Delta Lake, Parquet, CSV, JSON, Excel, text and images, with code to load them.
- Your engine: query data with Polars, pandas or PySpark, chosen from the status bar.
- Plugins for engines and storages: install one, and every explorer uses it; they never change the data libraries of a shared environment. Databricks volumes and Databricks Connect come with an experimental one.
- Background file operations with progress and Cancel; folder operations only in Unsafe mode, or always, or never.
- Work in JupyterLab: open storage files in JupyterLab's own editors and viewers, and save them back; view tables and files in tabs of their own.
- Bookmarks, remembered queries, transfer rules, a JupyterLab launcher item and a side panel.
Quick start
Try it without installing anything: open the demo on Binder, a made-up data lake in a notebook and in the launcher's tab (it may take a minute to start).
From the JupyterLab launcher
jupyter-storage-explorer-launcher
adds Storage Explorer to JupyterLab's launcher, opening the explorer in its own tab, and to the left side bar:
pip install "jupyter-storage-explorer-launcher[polars]"
From Python code
pip install "jupyter-storage-explorer[polars]"
[polars] adds the Polars plugin with Polars itself; other engines and storages are extras too, e.g.
[polars-support] for the plugin alone, using the libraries you have (recommended in carefully set up kernels). See
Installation
for all of them and the storage packages.
from jupyter_storage_explorer import StorageExplorer
StorageExplorer("s3://my-bucket/data")
Options after the address go to the storage package, e.g. profile="analytics". Double-click a file to preview it;
right-click for everything else. With the launcher installed, files that JupyterLab can show open in its editors
instead.
Browse a dataframe and get the rows you filtered back:
import polars as pl
from jupyter_storage_explorer import DataExplorer
explorer = DataExplorer(pl.scan_parquet("s3://my-bucket/lake/sales/*.parquet"))
explorer
explorer.result().collect() # after filtering and sorting in the widget
The notebooks folder has a demo of each widget on sample data.
Documentation
- StorageExplorer: storages, using the explorer, transfer policy, formats, working with it from Python and options.
- DataExplorer: the data
browser,
result(),on_change(),QuerySettingsand options. - The launcher: configuring
its tab with
launcher.pyfiles. - Development: building, releasing, and custom icons.
- Developing plugins: formats, engines, file operations and storages of your own, packaged as plugins.
Requirements
- Python 3.11 or later
- JupyterLab 4.0 or later (other Jupyter frontends show the widgets, without drag and drop from JupyterLab's file browser)
- For querying data: an engine plugin, e.g.
jupyter-storage-explorer[polars](Polars, tested with 2.0)
Why Storage Explorer?
A data-aware file explorer for large data lakes, in JupyterLab's main area (a notebook or a tab), with room for what working with data needs; it complements JupyterLab's file browser rather than replacing it.
- Large folders: paged, sorted and filtered as you type; tens of thousands of items listed by the kernel; file operations in the background, with progress and Cancel.
- Tables, not just files: Delta Lake tables and partitioned Parquet datasets open in the data browser, queried where they live with the engine you choose.
- From browsing to code: ready-to-run code and URLs for what you select; your code can follow what you browse (from Python).
- At home in JupyterLab: drag files to and from its file browser and between storages; edit files in its editors; keep an explorer in its side bar, beside your notebooks (the launcher's side panel).
- Safe by default: folders are moved, copied, renamed or deleted only in Unsafe mode, for one operation.
- Runs in your kernel: with your credentials and your libraries, and no server setup.
Metadata
Release files for jupyter-storage-explorer 0.19.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| jupyter_storage_explorer-0.19.0.tar.gz | 2.1 MB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jupyter_storage_explorer-0.19.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.5 MB
Release files / jupyter_storage_explorer-0.19.0.tar.gz
| Download URL | jupyter_storage_explorer-0.19.0.tar.gz |
|---|---|
| Size | 2.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1177df1ff4f8275256c81f643762f69837e4f51413b9a151c08ff6df30043183
|
|
BLAKE2b-256 checksum How to use checksums |
54e5456f4554e76fa75d3b2ebe10e98968b754e990980034552fa538f9a4499e
|
| 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 23, 2026.
Transparency logRelease files / jupyter_storage_explorer-0.19.0-py3-none-any.whl
| Download URL | jupyter_storage_explorer-0.19.0-py3-none-any.whl |
|---|---|
| Size | 323.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d3ba11fdf2d782606a6e90bb6f890ef20a50a0eae7da035a1dae40c27100186c
|
|
BLAKE2b-256 checksum How to use checksums |
9d6f44b843692c8a03b828190f4958749eb0f01cb4bb43e973128a3e64a8639f
|
| 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 23, 2026.
Transparency logSecurity for jupyter-storage-explorer 0.19.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.
Attestation for jupyter_storage_explorer-0.19.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 23, 2026.
Transparency logA 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.