skillfed

napari-plugin-engine

napari plugin engine, fork of pluggy

napari-plugin-engine v0.2.1 180.7K downloads/30d#10,143 on PyPI6
Permissive license MIT Abandoned released

What it is and what it does

napari-plugin-engine is a fork of pluggy, adapted by the napari team to provide plugin discovery and hook execution. It allows applications to register and call plugins using either naming conventions or entry points, with features like lazy discovery, hook reordering, and enhanced metadata retrieval. The package includes type annotations and pytest fixtures for testing.

This is the first-generation napari plugin engine and is now deprecated. The napari project has moved to npe2 as the recommended plugin system for all new development. Existing plugins are encouraged to migrate. The package remains available for legacy compatibility but receives no active maintenance.

Use it for:

  • Loading and executing plugins in legacy napari installations that have not yet migrated to npe2
  • Testing plugin systems that use hook-based architecture with pytest fixtures
  • Understanding the evolution of napari's plugin architecture before the npe2 transition
  • Maintaining older napari-based applications that depend on the first-generation plugin engine

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A plugin discovery and hook-calling system for napari, enabling applications to load and execute plugins registered via naming convention or entry points.

No. The package is officially deprecated and abandoned; the napari team explicitly recommends npe2 for all new plugins and existing plugins to migrate. Install only if you are maintaining legacy code that cannot yet move to npe2. For new development, use npe2 instead.

Install

napari-plugin-engine on PyPI

pip

pip install napari-plugin-engine

uv

uv add napari-plugin-engine

poetry

poetry add napari-plugin-engine

Installing napari-plugin-engine

Before you install

Low install friction with a single runtime dependency (importlib-metadata). However, the package is abandoned—the repository is archived and officially deprecated in favor of npe2, with no active maintenance.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions, making it legally straightforward to adopt.

Quickstart

pip install napari-plugin-engine

from napari_plugin_engine import HookimplementationMarker

hookimpl = HookimplementationMarker('napari')

Requires Python 3.6 or later; package is deprecated and no longer maintained.

Verify before relying

  • Whether existing napari installations still depend on this package or have migrated to npe2
  • Compatibility with Python versions beyond 3.10 given the abandoned status
  • Whether the lazy plugin discovery feature remains performant in production deployments

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies 1 — importlib-metadata
Maintenance abandoned — 185 days since the last release
Last repo commit (repository archived)
First released
Downloads 180,652/month — #10,143 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: napari_plugin_engine-0.2.1-py3-none-any.whl

Development Status :: 4 - BetaIntended Audience :: EducationIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Scientific/EngineeringTopic :: Scientific/Engineering :: Bio-InformaticsTopic :: Scientific/Engineering :: Information AnalysisTopic :: Scientific/Engineering :: VisualizationTopic :: Software Development :: LibrariesTopic :: Software Development :: TestingTopic :: Utilities

Tags

plugin discovery and registrationhook system for extensibilitynapari plugin loaderplugin engine frameworkentry point plugin managementlazy plugin loading
deprecatedlegacy-plugin-system

More Libraries packages