Skip to main content

A JupyterLab side panel for to-dos with checkbox import from notebooks.

Project description

jupyterlab_todo_list

Build Status

Keep lightweight to-dos inside JupyterLab. This extension adds a persistent side panel that lets you add, check off, and delete tasks while working in notebooks. Items are cached locally and synced to a small REST endpoint so they follow you between sessions.

https://github.com/user-attachments/assets/79b642f0-dd4c-4cae-82bf-9d56c32b3cc6

Requirements

  • JupyterLab >= 4.0.0

Install

pip install jupyterlab_todo_list

The Python package is published on PyPI, and the labextension bundle is on npm as @xlt208/jupyterlab-todo-list for anyone integrating it into custom builds. A normal pip install brings in the Python backend plus the bundled frontend automatically—no extra npm step required.

Use

  1. Launch JupyterLab.
  2. Open the command palette or launcher and run Open To-Do List.
  3. Add tasks in the left side panel. Items are saved automatically.

The panel reopens on the next Lab session and restores your last task list.

Uninstall

pip uninstall jupyterlab_todo_list

Contributing

Development install

The jlpm command is JupyterLab's pinned version of Yarn and is already bundled with Lab. NodeJS (>=18) must be available on your PATH.

git clone https://github.com/xlt208/jupyterlab-todo-list.git
cd jupyterlab_todo_list

python -m venv .venv
source .venv/bin/activate
pip install --editable ".[test]"

jlpm install
jlpm build
jupyter labextension develop . --overwrite

During development you can keep the TS build and Lab running in watch mode:

jlpm watch   # terminal 1
jupyter lab  # terminal 2

To undo the editable install run pip uninstall jupyterlab_todo_list and remove the jupyterlab-todo-list symlink reported by jupyter labextension list.

Testing the extension

jlpm test          # Jest unit tests
jlpm lint:check    # prettier + eslint + stylelint
jlpm playwright test # UI tests (see ui-tests/README.md for setup)

Packaging the extension

See RELEASE

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

jupyterlab_todo_list-0.3.0.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyterlab_todo_list-0.3.0-py3-none-any.whl (42.8 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_todo_list-0.3.0.tar.gz.

File metadata

  • Download URL: jupyterlab_todo_list-0.3.0.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for jupyterlab_todo_list-0.3.0.tar.gz
Algorithm Hash digest
SHA256 07236a40c3e029b326b8766951f107486ec3234eef095619d213ed0bf6e50fe4
MD5 4efb1ea1a4fa285448da267e1386f406
BLAKE2b-256 868ac7a43f5612d848a13ed6639874a4a5f118c0e0ef3e181658e5f6c8b08ef8

See more details on using hashes here.

File details

Details for the file jupyterlab_todo_list-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_todo_list-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8f5ad607c14707dab25d2dfabda4efda2b276beee4ca28f634379843f9859423
MD5 90e8ff263030d6653b1e46af9ddc63b9
BLAKE2b-256 0eaa22a98278685f5f8f493ce17127b3bfb84bd1474ad1f4b5be6a50e5816916

See more details on using hashes here.

Supported by

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