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-1.0.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-1.0.0-py3-none-any.whl (46.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jupyterlab_todo_list-1.0.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-1.0.0.tar.gz
Algorithm Hash digest
SHA256 85ead7e58ba579ae8148c498a2432f060e378c9896776c0a37915b125bb5ae78
MD5 55236ca9047eb283e73e0d01472a62f2
BLAKE2b-256 bb27c0dac00596c755d3d18238f293150ce5ad1eb0cb67192687fd273fa92fc1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for jupyterlab_todo_list-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1725a8553353df73995e22c48d57dd85538d834aca992101af0328957ad3eeb5
MD5 7d1a1f41d841b141c82984c6a03241f9
BLAKE2b-256 d7a9f3bf08002d64f43f7e5453386142c6b59595d1648c52d87ec1c2379e32d3

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