ipyfilechooser
Python file chooser widget for use in Jupyter/IPython in conjunction with ipywidgets
What it is and what it does
ipyfilechooser is a widget for Jupyter and IPython notebooks that provides an interactive file and folder browser. It wraps the ipywidgets library to create a dialog where users can navigate the filesystem, select files or folders, and apply filters. The widget displays the selected path, filename, or both through properties like `.selected_path`, `.selected_filename`, and `.selected`, and can be reset to defaults or constrained to a sandbox directory.
The widget includes visual cues: selected file paths appear in green if the file does not exist and orange if it does, helping users avoid accidental overwrites. It supports filtering by file pattern (using fnmatch syntax), hiding or showing hidden files, customizing folder icons, and restricting navigation to a specific parent directory. Callbacks can be registered to respond when the user makes a selection.
Use it for:
- Let notebook users interactively select input files without typing paths manually.
- Build a file upload or data-loading interface in a Jupyter notebook with visual feedback on file existence.
- Restrict file browsing to a specific project directory to prevent accidental access to sensitive paths.
- Filter file selection to only certain types (e.g., .csv, .txt) to guide users toward valid inputs.
- Create a folder-selection dialog for output or working directory configuration in a notebook workflow.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Jupyter/IPython widget that lets users browse and select files or folders through an interactive dialog, with visual feedback for existing vs. new files and customizable filtering.
Yes, if you need an interactive file picker in Jupyter/IPython. The package is stable, has no security vulnerabilities, and installs with minimal friction. The main caveat is dormant maintenance—last release was 2021—so verify compatibility with your current ipywidgets and Jupyter versions before relying on it for production notebooks. It is well-suited for exploratory or educational notebooks where users need a GUI to browse and select files.
Install
ipyfilechooser on PyPI
pip
pip install ipyfilechooseruv
uv add ipyfilechooserpoetry
poetry add ipyfilechooserInstalling ipyfilechooser
Before you install
Low friction install with a single runtime dependency (ipywidgets). Maintenance is dormant—last release was 2021-09-15 and last commit 2024-04-02—but the package is marked Production/Stable and carries no known vulnerabilities, so it is unlikely to break in routine use.
License in practice
MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
Quickstart
pip install ipyfilechooser
from ipyfilechooser import FileChooser
fc = FileChooser('/home/user')
display(fc)
print(fc.selected) # Access selected file path
Requires a Jupyter or IPython environment to display and interact with the widget.
Verify before relying
- Whether the package works with current versions of ipywidgets and modern Jupyter releases, given the last release was in 2021.
- Whether Windows path handling and sandbox_path restrictions (added in 0.6.0) are fully stable in practice.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — ipywidgets |
| Maintenance | dormant — 1,794 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 370,592/month — #7,175 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: ipyfilechooser-0.6.0-py3-none-any.whl
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
ipywidgetsipywidgets provides interactive HTML widgets…
permissive · top 1,000 on PyPI
jupyterJupyter is a metapackage that installs the core…
permissive · top 5,000 on PyPI
jupyter-ui-pollBlocks Jupyter cell execution while waiting for…
permissive · top 15,000 on PyPI
ipytreeipytree provides a tree-structure widget for…
permissive · top 15,000 on PyPI
ipyvueProvides a Jupyter widget base for building…
permissive · top 15,000 on PyPI
notebookJupyter Notebook is a web-based interactive…
permissive · top 1,000 on PyPI
ipykernelProvides the IPython kernel backend that powers…
permissive · top 1,000 on PyPI
widgetsnbextensionProvides the JavaScript frontend and…
permissive · top 1,000 on PyPI
jupyter-nbextensions-configuratorProvides a web-based graphical interface for…
permissive · top 15,000 on PyPI