Home

Awesome

npe2 - napari plugin engine version 2

CI codecov

Project description

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.

Getting started

The napari plugin docs landing page offers comprehensive information for plugin users and for plugin developers.

Plugin users

For plugin users, the docs include information about:

Plugin developers

For plugin developers, the docs cover topics like:

Try the napari plugin template to streamline development of a new plugin.

Installation

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.

Using pip

  1. 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
```

2. Install npe2.

```bash
pip install npe2
```

3. Test your installation.

```bash
npe2 --help
```

Using conda

  1. Create and activate a virtual environment.

    conda create -n npe-test -c conda-forge python=3.12
    conda activate npe-test
    
  2. Install npe2.

    conda install npe2
    
  3. Test your installation.

    npe2 --help
    

Usage

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.

Examples

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

License

npe2 uses the BSD License.

History

This repo replaces the initial napari plugin engine v1. See also https://github.com/napari/napari/issues/3115 for motivation and technical discussion about the creation of v2.

Contact us

Visit our community documentation or open a new issue on this repo.