napari repository map#

This page gives contributors a high-level map of the repositories in the napari GitHub organization and related projects.

The status labels are approximate and should be read as contributor guidance:

  • Active: regular feature work or frequent cross-repository coordination. We welcome contributors to these repositories to help drive forward new features and improvements. Contributions to these repositories are likely to be more visible, but may also require more coordination with the core team and other contributors.

  • Maintenance: stable and useful; bug fixes, documentation updates, and dependency work are usually the most common changes. Contributions within this scope will be attended to in a timely manner, while larger feature contributions may require more discussion and coordination to ensure they fit with the current direction and scope of the project.

  • Early Development: new or still changing quickly. Contributions are especially welcome and can help shape the direction of these projects. These repositories may be fast changing, but can be easier to contribute to since they have fewer established conventions and patterns.

  • Backlog: still relevant, but not a current priority for the core team. We encourage contributions to these repos to bring them up to speed and bring functionality to match the original vision for the project.

Core application and core plugins#

These are the repositories that are most central to the core napari experience. See Important upstream dependencies for libraries that are fundamental to napari functionality but are developed outside of the napari organization.

Repo

Description

Status

napari

Main viewer application and the central repo for layers, events, settings, rendering integration, and releases.

Active

napari-console

In-viewer Python console plugin.

Maintenance

napari-svg

SVG export plugin for napari layers.

Backlog

napari-metadata

Metadata editing plugin for layers; included with bundled installs and napari[all].

Active

bermuda

Rust-backed spatial algorithms library used by napari for fast shape triangulation; included with napari[all].

Maintenance

Documentation, websites, and communication#

These repos shape how users and contributors discover napari, learn about it, and interact with project resources online. These repositories are a great place to contribute, even if you don’t have experience with Python, since they mostly involve writing and design.

Core website#

These repos build and publish the main napari.org site.

Repo

Description

Status

docs

Main narrative documentation sources for napari.org, excluding most autogenerated API docs.

Active

napari-sphinx-theme

Shared Sphinx theme and site UI used across napari websites.

Active

napari.github.io

Website content and generated assets used to publish napari/docs on napari.org.

Maintenance

resources

Shared graphics, copy, and brand resources for the project.

Maintenance

Additional websites and pages#

Sibling sites and community-facing pages published alongside the main docs.

Repo

Description

Status

workshops

Current workshop materials and publishing infrastructure for napari workshops.

Active

island-dispatch

Blog for napari news, announcements, and community updates.

Active

weather-report

Public analytics dashboard for project and ecosystem metrics.

Maintenance

meeting-notes

Notes from recurring project meetings.

Active

surveys

Analysis workflows for napari survey data.

Active

Plugin system#

The plugin ecosystem is built around the npe2 plugin engine and manifest specification. The repositories below are focused on supporting the plugin ecosystem, whether through core plugin infrastructure or development resources.

Repo

Description

Status

npe2

Plugin manifest and engine v2 for the napari plugin ecosystem.

Active

napari-plugin-manager

Graphical plugin installer and management UI inside the viewer.

Active

napari-plugin-template

Main template for creating new napari plugins.

Active

npe2api

API documentation and schema reference site for the npe2 plugin manifest system.

Active

hub-lite

Static implementation of the napari plugin hub website.

Active

napari-plugin-checks

Checks and helper tooling for validating napari plugins.

Backlog

Specialized plugins#

These repos are useful to contributors working on particular workflows or newer features, but they are not as central as the core application and docs repos.

Repo

Description

Status

napari-animation

Plugin for building and exporting animations from viewer state.

Active

napari-geojson

GeoJSON support for reading and writing geographic annotation data in napari.

Active

napari-graph

Graph data structures and algorithms for visualization and editing workflows.

Backlog

napari-tiff

TIFF reader and writer plugin maintained by the napari team.

Active

midi-app-controller

MIDI controller integration for driving the napari UI.

Maintenance

update-checker

Viewer extension for checking whether a bundled napari app has an available update.

Backlog

Release, packaging, and ecosystem tooling#

These repos support packaging, automation, and other project-level operations.

Repo

Description

Status

packaging

Build and packaging infrastructure for bundled installers and app distribution.

Maintenance

napari-release-tools

Scripts and automation used to streamline the release process.

Active

shared-workflows

Reusable GitHub Actions workflows shared across napari repositories.

Active

pins

Version constraints and compatibility pins for the napari plugin ecosystem.

Backlog

constructor-manager

Tooling related to managing constructor-based app bundles.

Backlog

Important upstream dependencies#

The repositories below are not in the napari GitHub organization, but they are important friends of napari that are contributed to by members of the napari community.

  • vispy/vispy: rendering backend and canvas infrastructure used by napari.

The following pyapp-kit projects are developed in close coordination with napari’s needs:

  • pyapp-kit/magicgui: automatic widget generation from Python type hints, widely used in plugins and some napari UI.

  • pyapp-kit/superqt: extended Qt widgets used by napari and related plugins.

  • pyapp-kit/app-model: action and command model used by modern napari UI infrastructure; originally developed in the napari organization.

  • pyapp-kit/psygnal: typed event and signal system used across the pyapp-kit and napari ecosystem; its evented containers and models were spun out of code originally written for napari.

Archived and historical repositories

Archived repositories are included here for completeness. In most cases, new work should start in a different repository.