Skip to main content

Fast Datagrid widget for the Jupyter Notebook and JupyterLab

Project description


Binder pre-commit code style: prettier Code style: black tested with jest

Fast Datagrid widget for the Jupyter Notebook and JupyterLab


Usage and Examples

A fully-featured DataGrid interface DataGrid

Highly performant and fully integrated with ipywidgets DataGrid

Customize the way data is represented in your grid using a variety of renderers DataGrid

Enjoy a sophisticated selections model with two-way data binding DataGrid

Conditional formatting powered by Vega Expressions DataGrid

Tutorial and example notebooks can be found in the /examples directory.


If using JupyterLab, ipydatagrid requires JupyterLab version 3 or higher.

You can install ipydatagrid using pip or conda:

Using pip:

pip install ipydatagrid

Using conda:

conda install -c conda-forge ipydatagrid

If you are using Jupyter Notebook 5.2 or earlier, you may also need to enable the nbextension:

jupyter nbextension enable --py [--sys-prefix|--user|--system] ipydatagrid

NOTE: For examples using Scales from bqplot to work as intended, the bqplot notebook and lab extensions must be installed as well. See the bqplot repo for installation instructions:

Development installation

For a development installation:

git clone
cd ipydatagrid
conda install ipywidgets=8 jupyterlab
pip install -ve .

Enabling development install for Jupyter notebook:

jupyter nbextension install --py --symlink --sys-prefix ipydatagrid
jupyter nbextension enable --py --sys-prefix ipydatagrid

Enabling development install for JupyterLab:

jupyter labextension develop . --overwrite

Note for developers: the --symlink argument on Linux or OS X allows one to modify the JavaScript code in-place. This feature is not available with Windows.

If you are changing TypeScript code you can watch for code changes and automatically rebuild using

jlpm watch

in one terminal and

jupyter lab

(or jupyter notebook or similar) in another.


We :heart: contributions.

Have you had a good experience with this project? Why not share some love and contribute code, or just let us know about any issues you had with it?

We welcome issue reports here; be sure to choose the proper issue template for your issue, so that we can be sure you're providing the necessary information.

Before sending a Pull Request, please make sure you read our Contribution Guidelines.


Please read the LICENSE file.

Code of Conduct

This project has adopted a Code of Conduct. If you have any concerns about the Code, or behavior which you have experienced in the project, please contact us at

Security Vulnerability Reporting

If you believe you have identified a security vulnerability in this project, please send email to the project team at, detailing the suspected issue and any methods you've found to reproduce it.

Please do NOT open an issue in the GitHub repository, as we'd prefer to keep vulnerability reports private until we've had an opportunity to review and address them.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipydatagrid-1.3.2.tar.gz (7.1 MB view hashes)

Uploaded Source

Built Distribution

ipydatagrid-1.3.2-py3-none-any.whl (1.9 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page