JupyterLab 4.0

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • nbformat

    Reference implementation of the Jupyter Notebook format

  • nbformat is reference implementation of the notebook format: https://github.com/jupyter/nbformat No recent major releases.

    jupytext is great, you can also review your notebooks as `.ipynb` files using GitNotebooks [https://gitnotebooks.com]. (I'm the solo dev)

  • nb_conda_kernels

    Package for managing conda environment-based kernels inside of Jupyter

  • If you use conda there are extensions that can help with this by automatically registering any available conda environments that include ipykernel in your Jupyter Lab environment.

    nb_conda_kernels is pretty reliable but not actively maintained. Gator from the mamba folks is new and still a bit rough around the edges but looks like it will be pretty slick eventually.

    https://github.com/Anaconda-Platform/nb_conda_kernels

    https://github.com/mamba-org/gator

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • jupyter-collaboration

    A Jupyter Server Extension Providing Support for Y Documents

  • Do you have an example of how this works with another tool/language?

    I don't know if I understood it correctly but maybe you could:

    - Upload your notebook to Github, then create a url with Binder (part of the jupyter ecosystem) directly to an editing/fiddling playground: https://mybinder.org/

    - If by user-local you mean on their own machine, they can clone your repo and run their own jupyterlab to fiddle

    - If everything should stay on your own computer/server, you could share a link to your own jupyterlab and collaborate with others in real-time: https://jupyterlab-realtime-collaboration.readthedocs.io/en/...

  • livebook

    Automate code & data workflows with interactive Elixir notebooks

  • Is there a similar notebook application like https://livebook.dev/ for Python?

    I like Jupyter, but after trying out Livebook with Elixir I wish there was something similar in Python.

    Smart cells and Toggling parts of code on/off is extremely useful features in a Notebook app.

  • papermill

    📚 Parameterize, execute, and analyze notebooks

  • You may be interested in papermill to address the parametrized analysis problem [1]. I think (but I'm not positive) this is what the data team at a previous job used to automate running notebooks for all sorts nightly reports.

    [1] https://papermill.readthedocs.io/en/latest/#

  • m1_huggingface_diffusers_demo

    Demo of how to get HuggingFace Diffusers working on an M1 Mac

  • The trick is that you have to deactivate the virtual environment and then resource it after adding Jupyter to that virtual environment.

    Most shells cache executable paths, so the path for jupyter will be the global path, not the one for your virtual environment. This is unfortunately not at all obvious and leads to very hard to track down bugs that seem to disappear and reappear if you aren't familiar with the issue.

    I have a recipe here which always works: https://github.com/nlothian/m1_huggingface_diffusers_demo#se...

    If you don't have requirements.txt then do this: `pip3 install jupyter` for that line, then `deactivate` and `source ./venv/bin/activate`.

  • gator

    Conda environment and package management extension from within Jupyter (by mamba-org)

  • If you use conda there are extensions that can help with this by automatically registering any available conda environments that include ipykernel in your Jupyter Lab environment.

    nb_conda_kernels is pretty reliable but not actively maintained. Gator from the mamba folks is new and still a bit rough around the edges but looks like it will be pretty slick eventually.

    https://github.com/Anaconda-Platform/nb_conda_kernels

    https://github.com/mamba-org/gator

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • datasette

    An open source multi-tool for exploring and publishing data

  • Question for the more experienced than me but how does JupyterLab/Notebooks compare with the likes of datasette[0]?

    [0] https://datasette.io/

  • jupyenv

    Declarative and reproducible Jupyter environments - powered by Nix

  • > There aren't good boundaries between Jupyter's own Python environment, and that of your notebooks— if you have a dependency which conflicts with one of Jupyter's dependencies, then good luck.

    I believe that you can use https://github.com/tweag/jupyenv for this.

  • notebooker

    Productionise & schedule your Jupyter Notebooks as easily as you wrote them.

  • To add to this, shamelessly self-promoting, Notebooker (https://github.com/man-group/notebooker) is a neat way of scheduling your Jupyter notebooks as parametrisable reports whose results are presented in a little web GUI (either as static HTML, PDF, or as reveal.js slideshow renders)

    While I have no need for it's only functionality and the SAAS part of plotly, I really do like plotly python + cufflinks [1]. It lets you make interactive plots in html/js format. Which means you can save the notebook as html, and while people won't be able to rerun the code, they can still zoom in on graphs, hover to see annotations etc, which is a really nice way to share the outcome of your work in a more accessible way.

    [1] https://github.com/santosjorge/cufflinks

  • datapane

    Build and share data reports in 100% Python

  • If you're interested in an easier way to create reports using Python and Plotly/Pandas, you should check out our open-source library, Datapane: https://github.com/datapane/datapane - you can create a standalone, redistributable HTML file in a few lines of Python.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts