Jupyter

repo: markusschanta/awesome-jupyter
category: Miscellaneous related: Python · Data Science


Awesome Jupyter Awesome HitCount

A curated list of awesome Jupyter projects, libraries and resources. Jupyter is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text.

<div align="center" style="border-bottom: 0px;"> <br> <img width="400" src="assets/logo.png" alt="Jupyter logo"> <br> <br> </div>


<div align="center" style="border-bottom: 0px;"> <sub>Awesome Jupyter is proudly supported by our sponsor:</sub> <br> <br> <a href="https://deepnote.com/?utm_source=github&utm_medium=promo&utm_campaign=awesomejupyter"><img width="300" src="assets/deepnote.jpeg" alt="Deepnote logo"></a> <br> <br> <b>Deepnote is a collaborative data science notebook built for teams.</b> <div> <sub>Explore data with Python & SQL from your browser. Add context with data visualizations and rich text editing. Share your work by simply sending a link. <a href="https://deepnote.com/?utm_source=github&utm_medium=promo&utm_campaign=awesomejupyter">Check it out on the Deepnote free plan.</a></sub> </div> </div>


Contents


Runtimes/Frontends

Collaboration/Education

Visualization

  • Altair - Declarative visualization library for Python, based on Vega and Vega-Lite.
  • anywidget - A Python library that simplifies creating and publishing custom Jupyter widgets.
  • Bokeh - Interactive visualization library that targets modern web browsers for presentation.
  • bqplot - Grammar of Graphics-based interactive plotting framework for Jupyter.
  • Evidently - Interactive reports to analyze machine learning models during validation or production monitoring.
  • hvplot - A familiar and high-level API for data exploration and visualization in Jupyter.
  • ipychart - Interactive Chart.js plots in Jupyter.
  • ipycytoscape - Widget for interactive graph visualization in Jupyter using cytoscape.js.
  • ipydagred3 - ipywidgets library for drawing directed acyclic graphs in jupyterlab using dagre-d3.
  • ipyleaflet - Interactive visualization library for Leaflet.js maps in Jupyter notebooks.
  • IPySigma - Prototype network visualization frontend for Jupyter notebooks.
  • ipytree - Tree UI element for Jupyter.
  • ipyvizzu - Animated data storytelling tool.
  • ipyvolume - 3D plotting for Python in Jupyter based on widgets and WebGL.
  • ipywebrtc - Video/Audio streaming in Jupyter.
  • ipywidgets - UI widgets for Jupyter.
  • itk-jupyter-widgets - Interactive widgets to visualize images in 2D and 3D.
  • jp_doodle - Infrastructure for building special purpose interactive diagrams in 2D and 3D.
  • jupyter-gmaps - Interactive visualization library for Google Maps in Jupyter notebooks.
  • jupyter-manim - Display manim (Mathematical Animation Engine) videos or GIFs in Jupyter notebooks.
  • lux - Recommends a set of visualizations whenever a dataframe is printed in a notebook.
  • mpld3 - Combining Matplotlib and D3js for interactive data visualizations.
  • pd-replicator - Copy a Pandas DataFrame to the clipboard with one click.
  • Perspective - Data visualization and analytics component, especially for large/streaming datasets.
  • pyecharts - Python interface for the ECharts visualization library.
  • pythreejs - Python / ThreeJS bridge utilizing the Jupyter widget infrastructure.
  • tqdm - Fast, extensible progress bar for loops and iterables.
  • tributary - Python data streams with Jupyter support.
  • xleaflet - C++ Backend for ipyleaflet.
  • xwebrtc - C++ Backend for ipywebrtc.
  • xwidgets - C++ Backend for ipywidgets.

Tables

  • buckaroo - GUI Data Wrangling tool for Jupyter and pandas.
  • ipyaggrid - The power of ag-Grid in Jupyter.
  • ipydatagrid - Fast datagrid widget for Jupyter.
  • ipyregulartable - High performance, editable, stylable datagrids in Jupyter.
  • ipysheet - Interactive spreadsheets in Jupyter.
  • ITables - Pandas and Polars DataFrames rendered as interactive datatables-net tables.
  • Qgrid - Interactive grid for sorting, filtering, and editing DataFrames in Jupyter.

Rendering/Publishing/Conversion

  • Binder - Turn a GitHub repo into a collection of interactive notebooks.
  • Bookbook - Bookbook converts a set of notebooks in a directory to HTML or PDF, preserving cross references within and between notebooks.
  • ContainDS Dashboards - JupyterHub extension to host authenticated scripts or notebooks in any framework (Voilà, Streamlit, Plotly Dash etc).
  • Ganimede - Store, version, edit and execute notebooks in sandboxes and integrate them directly via REST interfaces.
  • Jupyter Book - Build publication-quality books and documents from computational material.
  • jupyterlab_nbconvert_nocode - NBConvert exporters for PDF/HTML export without code cells.
  • Jupytext - Convert and synchronize notebooks with text formats (e.g. Python or Markdown files) that work well under version control.
  • jut - CLI to nicely display notebooks in the terminal.
  • Kapitsa - CLI to search local Jupyter notebooks.
  • Mercury - Convert notebooks into web applications.
  • nbconvert - Convert notebooks to other formats.
  • nbdev - Develop, package and distribute Python packages to PyPI using Jupyter as a Literate Programing environment.
  • nbflow - One-button reproducible workflows with Jupyter and Scons.
  • nbinteract - Create interactive webpages from Jupyter notebooks.
  • nbscan - Search for and print cells contents of Jupyter notebooks.
  • Nikola - Static Site Generator that converts notebooks into websites.
  • notedown - Convert Jupyter notebooks to markdown (and back).
  • Papermill - Tool for parameterizing, executing, and analyzing Jupyter notebooks.
  • Ploomber - Run a collection of notebooks and scripts in a reproducible manner using a pipeline.yaml file.
  • pynb - Jupyter Notebooks as plain Python code with embedded Markdown text.
  • RISE - Reveal.js Jupyter/IPython Slideshow.
  • rst2ipynb - Convert standalone reStructuredText files to Jupyter notebook file.
  • Voila - Rendering of live Jupyter Notebooks with interactive widgets, allowing dashboarding based on Jupyter Notebooks.

Version Control

  • databooks - A command-line utility that eases versioning and sharing of notebooks.
  • jupyter-nbrequirements - Dependency management and optimization in Jupyter Notebooks.
  • jupyterlab-git - Extension for Git integration.
  • nbdime - Tools for diffing and merging of Jupyter notebooks.
  • nbQA - Run any standard Python code quality tool on a Jupyter Notebook, from the command-line or via pre-commit.
  • Neptune - Version, manage and share notebook checkpoints in your projects.
  • ReviewNB - Code reviews for Jupyter Notebooks.

JupyterLab Extensions

  • amphi-etl - Low-code ETL extension for Jupyterlab.
  • celltags - Extension to organise and execute notebooks using cell tags.
  • code_formatter - A universal code formatter.
  • debugger - A visual debugger for Jupyter notebooks, consoles, and source files.
  • drawio - Extension that displays drawio/mxgraph diagrams.
  • elyra - A visual editor for creating and running notebook (or Python script) pipelines locally or remotely.
  • genv - Extension for managing GPU environments in JupyterLab.
  • go-to-definition - Extension for navigating to the definition of a variable or function in JupyterLab.
  • google-drive - Extension for Google Drive integration.
  • jupyter-ai - Work with generative AIs (wide range of models supported) as a conversational assistant in JupyterLab.
  • jupyter-fs - A filesystem-like content manager for multiple backends in Jupyter.
  • jupyter-notify - Cell magic for browser notification of cell completion.
  • jupyter-panel-proxy - Automatically serve notebooks as Panel data apps at the /panel endpoint of your Jupyter server.
  • jupyter-stack-trace - Click on the stack trace to open the respective file or a Google search.
  • jupyterlab-executor - Extension to execute scripts from the Jupyterlab file browser.
  • jupyterlab-kyso - Extension to publish notebooks to the Kyso platform from Jupyterlab.
  • jupyterlab-notifications - Customizable notebook cell completion browser notifications for JupyterLab.
  • jupyterlab-tensorboard-pro - TensorBoard support for JupyterLab.
  • jupyterlab_autoversion - Automatically version notebooks in JupyterLab.
  • jupyterlab_commands - Add arbitrary python commands to the JupyterLab command palette.
  • jupyterlab_email - Email notebooks and their content from within JupyterLab.
  • jupyterlab_iframe - View HTML as an embedded iframe in JupyterLab.
  • jupyterlab_miami_nights - Combination of VS Code's SynthWave '84 and JupyterLab's Neon Night themes.
  • jupyterlab_templates - Notebook templates in JupyterLab.
  • latex - Extension for live editing of LaTeX documents.
  • lineapy - Extension for transforming messy Jupyter notebooks to production-ready pipelines with two lines of code.
  • lsp - IDE-like features (code navigation, hover suggestions, linters, diagnostics, kernel-less autocompletion etc.)
  • nb_black - Extension to keep Python code automatically formatted using black.
  • python-bytecode - Explore CPython Bytecode in JupyterLab.
  • quickopen - Quickly open a file in JupyterLab by typing part of its name.
  • shortcutui - An extension for managing keyboard shortcuts.
  • sidecar - A sidecar output widget for JupyterLab.
  • sql - SQL GUI for JupyterLab.
  • stickyland - Break the linear presentation of notebooks with sticky cells.
  • system-monitor - Extension to display system metrics.
  • tabnine - Tabnine AI auto completer extension.
  • theme-darcula - A handsome Darcula theme for Jupyterlab.
  • toc - Extension that provides a table of contents for notebooks.
  • topbar - Top Bar extension for JupyterLab.
  • variableinspector - Variable inspector extension that shows variables and their values.
  • vim - Vim notebook cell bindings.
  • voyager - Extension to view CSV and JSON data in Voyager.

Testing

  • ipytest - Test runner for running unit tests from within a notebook.
  • nbcelltests - Cell-by-cell testing for notebooks in Jupyter.
  • nbval - Py.test plugin for validating Jupyter notebooks.
  • nosebook - Nose plugin for finding and running IPython notebooks as nose tests.
  • pointblank - Notebook-friendly testing of DataFrames and database tables for data quality purposes.
  • sphinxcontrib-jupyter - Sphinx extension for generating Jupyter notebooks.
  • treebeard - GitHub Action for testing/scheduling Jupyter notebooks.
  • treon - Easy-to-use test framework for Jupyter Notebooks.

Domain-Specific Projects

  • ArcGIS - Library for working with maps and geospatial data, powered by web GIS.
  • GenePattern Notebook - Integrating Genomic Analysis with Interactive Notebooks.
  • GeoNotebook - Extension for exploratory geospatial analysis.
  • Jupylet - Create 2D and 3D games, graphics, live music and sound interactively in a Jupyter notebook.
  • keplergl - Jupyter extension for visual exploration of large-scale geolocation data sets.
  • lolviz - Data-structure visualization tool for lists of lists, lists, dictionaries.
  • Quantopian Notebooks - Jupyter-based platform for financial research.
  • vpython-jupyter - VPython 3D engine running in a Jupyter notebook.
  • xontrib-jupyter - Jupyter kernel for xonsh, a Python-powered, cross-platform, Unix-gazing shell language.

Hosted Notebook Solutions

Official Resources and Documentation

Community Resources

Articles/Guides/Tutorials

Contributing

Your contributions are always welcome! Please take a look at the contribution guidelines first.

[[curator]]
I'm the Curator. I can help you navigate, organize, and curate this wiki. What would you like to do?