jupyterlab_notebook_awareness
A JupyterLab extension that tracks a user's current notebook and cell.
Decision gist · record as of 2026-08-14
Yes, if you run JupyterLab 4.0.0 or later and need to track user presence across notebooks and cells in a collaborative setting. The extension has low install friction, no external dependencies, and is actively maintained. Install only if you have a specific use case for awareness data; it adds no visible UI on its own but enables other tools to build on it.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires JupyterLab >= 4.0.0; extension is a frontend plugin and runs only within JupyterLab, not standalone.
- Low friction: pure Python wheel with no runtime dependencies.
- Actively maintained with recent releases and a live repository.
License · maintenance · safety
permissive license (permissive) — BSD 3-Clause License permits commercial and private use with minimal restrictions; you must retain copyright notice and license text in distributions.
last release 2025-10-16 (302 days) · last repo commit 2026-08-11 · 1 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 80,222 downloads/mo, #14,306 on PyPI
Alternatives
Verify before relying
pip install jupyterlab_notebook_awareness
# Then in JupyterLab, access awareness data:
const awareness = notebook?.model?.sharedModel?.awareness;
const allStates = awareness?.getStates();
const localState = awareness?.getLocalState();- Whether the extension requires JupyterLab 4.0.0 or later to function (stated in description but not in requires_python)
- Whether awareness state persists across page refreshes or is lost on reconnect
- Performance impact when tracking many concurrent users in a single notebook
What it is and what it does
This is a JupyterLab frontend extension that automatically tracks and broadcasts each user's current notebook and active cell to the collaborative awareness state. When you open a notebook or click on a cell, the extension updates two fields—`activeCellId` and `notebookPath`—that are shared with all other connected users, allowing real-time visibility into who is looking at what.
The extension works transparently: awareness state updates automatically when you open a notebook, switch cells, or refresh the page. Other applications or extensions can then query the awareness object to see which notebook and cell each user is currently viewing, enabling features like presence indicators or activity tracking in collaborative environments.
Use it for
- Show presence indicators in a shared notebook so collaborators know which cells others are actively viewing.
- Log or audit which notebooks and cells users access during a collaborative session.
- Build a user activity dashboard that displays real-time awareness of who is working on which notebook.
- Coordinate focus during pair programming by tracking which cell each developer is currently editing.
- Implement smart notifications that alert users only when activity occurs in cells they are viewing.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you run JupyterLab 4.0.0 or later and need to track user presence across notebooks and cells in a collaborative setting.
The extension has low install friction, no external dependencies, and is actively maintained. Install only if you have a specific use case for awareness data; it adds no visible UI on its own but enables other tools to build on it.
Install
jupyterlab-notebook-awareness on PyPI
Before you install
Low friction: pure Python wheel with no runtime dependencies. Actively maintained with recent releases and a live repository.
Requires JupyterLab >= 4.0.0; extension is a frontend plugin and runs only within JupyterLab, not standalone.
License in practice
BSD 3-Clause License permits commercial and private use with minimal restrictions; you must retain copyright notice and license text in distributions.
Quickstart
pip install jupyterlab_notebook_awareness
# Then in JupyterLab, access awareness data:
const awareness = notebook?.model?.sharedModel?.awareness;
const allStates = awareness?.getStates();
const localState = awareness?.getLocalState();
Verify before relying
- Whether the extension requires JupyterLab 4.0.0 or later to function (stated in description but not in requires_python)
- Whether awareness state persists across page refreshes or is lost on reconnect
- Performance impact when tracking many concurrent users in a single notebook
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 302 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 80,222 / month, #14,306 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Framework :: JupyterFramework :: Jupyter :: JupyterLabFramework :: Jupyter :: JupyterLab :: 4Framework :: Jupyter :: JupyterLab :: ExtensionsFramework :: Jupyter :: JupyterLab :: Extensions :: PrebuiltLicense :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9 |
Evidence: jupyterlab_notebook_awareness-0.2.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “jupyterlab user awareness tracking”
- jupyterlab_notebook_awarenessA JupyterLab extension that tracks which notebook and cell each user…
- jupyter-collaboration-uiAdds real-time collaboration UI elements to JupyterLab and Jupyter…
- metagit-cliMetagit provides cross-repository awareness and management for…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also jupyterlab-chat · jupyterlab-execute-time · jupyter-ai-tools · jupyter-server-fileid · jupyter-server-documents · jupyter-collaboration · jupyter-collaboration-ui · jupyter-black · jupyter_bokeh · jupyter-docprovider