A jupyter kernel with automatic PEP723 environments, using uv
Project description
Project Overview
This is a Jupyter kernel implementation that provides on-demand IPython kernels with dependencies pulled from PEP723 metadata. Each kernel instance is an on-demand virtual environment managed by uv. This kernel is compatible with notebooks modified by juv.
Installation and use
Either:
uv tool run --with uvvkernel --from jupyterlab jupyter-lab
or just pip install uvkernel to your existing jupyter server environment.
Known limitations
- Can't install Jupyter extensions
- There is no UI (you can use the juv comand line tool, though!)
- There's no graceful handling of invalid/unsolvable dependency metadata (the kernel just doesn't start)
Why use this instead of...
Juv?
Use Juv if you want to spin up a dedicated Jupyter server for a specific notebook. Use uvkernel if you prefer to have a single (maybe even shared) jupyter server, and many notebooks with individual dependencies. Use Juv for a nice command-line tool to add dependencies and do locking (in fact, you should use the command line tool to manage your notebooks for uvkernel!)
pyproject-local-kernel?
Use pyproject-local-kernel if you want to manage dependencies with pyproject.toml files, separate from your notebooks. Use uvkernel if you want the dependencies embedded in the notebook. Use pyproject-local-kernel if you want the freedom to use uv/hatch/poetry/etc. uvkernel only uses uv!
Development Commands
- Install uv manually.
- Git checkout this repository.
- Run the local version like this:
# Test package with jupyter-lab
uv tool run --with . --refresh-package uvkernel --from jupyterlab jupyter-lab
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file uvkernel-0.2.0.tar.gz.
File metadata
- Download URL: uvkernel-0.2.0.tar.gz
- Upload date:
- Size: 27.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a55e046cfd9cc89ff9b4738f9081313903d76d575195fe4c0e1a55e3000b680c
|
|
| MD5 |
f8d746b5acfe94d56bbb65cd71ba2bab
|
|
| BLAKE2b-256 |
f752f37bc1f26c81604bfe525eeebad02fb5ed444d54f90f08860a98948b09c8
|
File details
Details for the file uvkernel-0.2.0-py3-none-any.whl.
File metadata
- Download URL: uvkernel-0.2.0-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.7.20
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
540441e32e90c55894fca8eb3ea2180df57989d68d6843dea8fa6317ab0e4dc6
|
|
| MD5 |
8a16dd8e0e78982f139c3af875c6e846
|
|
| BLAKE2b-256 |
cc3d0748a858ce8229097ea92814d052e4befc3150463d8d9818a851e1ba5a7b
|