Skip to main content

JupyterLab extension for easily locking cells, making them read-only and undeletable.

Project description

build PyPI version PyPI downloads

🔒 jupyterlab-cell-lock

JupyterLab UI showing "Lock all cells" and "Unlock all cells" buttons in the toolbar with cell examples

A JupyterLab extension for easily locking cells, making them read-only and undeletable.

⚠️ Limitations

This is not a security feature. It is primarily for preventing accidental modifications.

The extension locks cells by modifying metadata in the notebook file. Any user with knowledge of JupyterLab or the notebook file format can edit or remove this metadata to bypass the lock.

You should always use source control for your notebooks.

📝 Requirements

📦 Installation

Install with pip:

pip install jupyterlab-cell-lock

Confirm installation:

jupyter labextension list

💡 Use Cases

  • Educators Distributing Assignments and Notes: Provide notebooks with text, problem descriptions, and code, helping prevent students from accidentally editing assignments/lecture notes while still allowing them to add their own notes/answers in new or designated cells.

  • Protecting Content: Lock your notebook to ensure you don't accidentally delete or modify your work while iterating.

  • Creating Templates: Lock down template notebooks used to standardize workflows.

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_cell_lock-0.2.0.tar.gz (162.5 kB view details)

Uploaded Source

Built Distribution

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

jupyterlab_cell_lock-0.2.0-py3-none-any.whl (218.9 kB view details)

Uploaded Python 3

File details

Details for the file jupyterlab_cell_lock-0.2.0.tar.gz.

File metadata

  • Download URL: jupyterlab_cell_lock-0.2.0.tar.gz
  • Upload date:
  • Size: 162.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for jupyterlab_cell_lock-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d187ff232f351fe09c18fbbe8e5f2d0e694755dccdc091c2c0c0f67ecca5c402
MD5 57a306f261d88cc03769847f33af17d9
BLAKE2b-256 0f5653d0698b3d9192fdc31c3d24984fbdf291f9b44aeb437ce9591599e3d5ee

See more details on using hashes here.

File details

Details for the file jupyterlab_cell_lock-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_cell_lock-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50339405b9006ca67c18b1d59ce562538ffac24750805b84eeda4a481be190ac
MD5 96606c9a46c7715baaad413f1c21f221
BLAKE2b-256 44b1667236acddab2a65ed513a08ee718192e7d062204a6ef1a0c2e5963d7ddd

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