JupyterLab Marketplace (extension catalog): labextensions.dev

I am excited to introduce JupyterLab Marketplace - a community-run catalog of available JupyterLab extensions that surfaces real signals for each extension (PyPI downloads, GitHub stars, last release date).

Try: https://labextensions.dev
Repo: GitHub - orbrx/jupyter-marketplace
Feedback / issues: Sign in to GitHub · GitHub


Why this exists

End users (researchers, data scientists)

  • No unified marketplace like VS Code; discovery is scattered across PyPI, repos, and blog posts. (see No marketplace for jupyter extensions? )
  • Hard to judge trust quickly (is it active? widely used?).

Extension developers

  • Metrics are spread across GitHub and PyPI; hard to see everything in one place.
  • Difficult to compare with adjacent tools or show progress to users/stakeholders.
  • New authors can’t easily scan what already exists and where gaps are.

Project Jupyter / ecosystem stewards

  • Hard to quantify the “liveliness” of the ecosystem and show platform growth to stakeholders/funders.
  • A lack of extension catalog makes it difficult to gauge adoption, activity, and areas to invest.

What’s in the beta today

  • :magnifying_glass_tilted_right: Search across name, summary, description, author

  • :compass: Sorts: New & Rising, Popular (last 30 d), Most Downloaded, Most Stars, Recently Updated, Name (A–Z)

  • :bar_chart: Cards show GitHub stars, 30-day & all-time PyPI downloads, and “Updated X days ago”

  • :white_check_mark: Install guidance that works in normal and read-only/JupyterHub environments

  • :crescent_moon: Nightly refresh; public, read-only data view documented on the About page

Note: PyPI “downloads” are download events (a good proxy), not guaranteed installs.


How it works (data pipeline)

  • PyPI BigQuery for metadata + download stats.

  • Filtering out packages that are no longer published on PyPI + a small blocklist of extensions

  • GitHub API for stars/issues/recency

  • Curated into a read-only Supabase view consumed by the Next.js frontend

  • Scheduled daily BigQuery aggregation and GitHub Actions workflow to update Supabase

  • Privacy-respecting: no accounts; preferences live in your browser


Get your extension listed / fixed

If your package uses the Framework :: Jupyter :: JupyterLab :: Extensions classifier on PyPI, it should appear automatically after the next refresh.

Missing or incorrect? Please open a Data correction issue with the PyPI name and the fix. We try not to have ad-hoc fixes, but rather update the data pipeline to deal with the all similar issues at once.


Looking for feedback

  1. Would a small deep-link hook in the Extension Manager (to pre-focus a package) be acceptable upstream?
  2. What would be the most useful addition for discovery:
    • last supported major version of JupyterLab (i.e. Framework :: Jupyter :: JupyterLab :: 4)
    • extension categories and tags (theme, frontend/backend, AI tools)
    • security scans
  3. Volunteers for curation/testing and org verification are very welcome.

Live demo on the Community Call

I am aiming for a brief demo and Q&A on the Jupyter Community Call at Sep 4, 2025 at 15:00 UTC:

Would love your questions and early feedback there or in the repo.

This is a community project built by Orange Bricks and is not affiliated with Project Jupyter. The Jupyter® trademark is registered with the U.S. Patent & Trademark Office by LF Charities. © 2025

7 Likes

Wow, this is amazing - thank you soo much @ktaletsk! So many interesting extensions get surfaced, much easier to navigate than PyPI.

It would be good to stress that many of the extensions will be compatible with Notebook 7+ but we currently do not have a trove classifier to signify this. Would it be useful to create one?

4 Likes