napari architecture guide#

These pages provide a guide to the napari software architecture and is aimed at contributors who would like a better understanding of the napari code base. For advanced napari usage documentation, see In-depth explanations.

  • napari directory organization: Guide to the napari directory organization.

  • napari models and events: Explains napari python models and how they are connected to Qt classes and Vispy classes.

  • napari’s application model: Explains the napari application model, a declarative schema for keeping track of commands, menus and keybindings of the napari GUI.

  • magicgui type registration: Explains how magicgui widgets declared by users or plugins are automatically created, inputs updated and outputs added to the Viewer for registered napari types.