The napari plugin engine version 2, npe2 extends the functionality of napari's core. The plugin ecosystem offers user additional functionality for napari as well as specific support for different scientific domains.
This repo contains all source code and documentation required for defining, validating and managing plugins for napari.
The napari plugin docs landing page offers comprehensive information for plugin users and for plugin developers.
For plugin users, the docs include information about:
For plugin developers, the docs cover topics like:
- Building a plugin
- Guides to different plugin contributions
- Technical references such as the plugin manifest
Try the napari plugin template to streamline development of a new plugin.
The npe2
command line tool can be installed with pip
or conda
, but will already be installed as a dependency if you have napari installed.
- Create and activate a virtual environment.
If you are new to using virtual environments, visit our virtual environments guide.
```bash
python3 -m venv .venv
source .venv/bin/activate
```
-
Install npe2.
pip install npe2
-
Test your installation.
npe2 --help
-
Create and activate a virtual environment.
conda create -n npe-test -c conda-forge python=3.12 conda activate npe-test
-
Install npe2.
conda install npe2
-
Test your installation.
npe2 --help
The command line tool npe2
offers the following commands:
cache Cache utils
compile Compile @npe2.implements contributions to generate a manifest.
convert Convert first generation napari plugin to new (manifest) format.
fetch Fetch manifest from remote package.
list List currently installed plugins.
parse Show parsed manifest as yaml.
validate Validate manifest for a distribution name or manifest filepath.
List currently installed plugins:
npe2 list
Compile a source directory to create a plugin manifest:
npe2 compile PATH_TO_SOURCE_DIRECTORY
Convert current directory to an npe2-ready plugin (note: the repo must also be installed and importable in the current environment.):
npe2 convert .
Validate a plugin package. For example, a plugin named your-plugin-package
:
npe2 validate your-plugin-package
Show a parsed manifest of your plugin:
npe2 parse your-plugin-package
npe2 uses the BSD License.
This repo replaces the initial napari plugin engine v1. See also napari/napari#3115 for motivation and technical discussion about the creation of v2.
Visit our community documentation or open a new issue on this repo.