Plugins
Plugins are a Pro feature. Plugin development is intended for advanced users comfortable with writing manifest-based configurations.
Notemap supports custom plugins to extend its functionality. Whether you need a custom export format, automated node transformations, integration with external tools, or custom AI workflows, the plugin system gives you the building blocks to make Notemap work exactly the way you need.
Video: Overview of the Notemap plugin system
How Plugins Work
Plugins are manifest-based, meaning you define what your plugin does through a structured configuration rather than writing application code directly. Each plugin manifest describes the plugin’s actions, the events it responds to, and how it interacts with your mind maps.
Plugin Actions
Every plugin defines one or more actions. Each action specifies what data it receives, what it produces, and how it appears in the interface.
Input Types
Plugin actions can work with different scopes of data depending on what they need:
- Current selection — operates on the currently selected node or nodes
- Entire branch — receives a selected node along with all of its descendants
- Full map — works with the complete mind map structure
- No input — runs independently without requiring any map data
Output Types
Actions produce results in one of three ways:
- Transform existing content — modifies the selected nodes or branch in place
- Generate new content — creates new nodes, text, or other data and adds it to the map
- Display information — presents data to the user without modifying the map
Event Hooks
Plugins can hook into a wide range of events throughout the application lifecycle:
- Node creation — triggered when a new node is added to the map
- Node editing — triggered when a node’s text or properties are changed
- Node deletion — triggered when a node is removed from the map
- Node movement — triggered when a node is dragged or repositioned
- Selection changes — triggered when the user selects a different node or set of nodes
- Map loading — triggered when a mind map file is opened
- Map saving — triggered when a mind map is saved to disk
- Export — triggered during any export operation
- AI requests — triggered when AI features are invoked, allowing plugins to intercept or augment AI workflows
Hooking into AI requests lets you build custom AI workflows — for example, routing requests to a different model, adding custom system prompts, or post-processing AI-generated nodes before they are added to the map.
Context Menu Integration
Plugins can add their actions to the right-click context menu. You control where each action appears:
- Canvas context menu — shown when right-clicking on the canvas background
- Node context menu — shown when right-clicking on a node
- Both — the action appears in both canvas and node context menus
Custom Icons and Keyboard Shortcuts
Each plugin action can be assigned a custom icon that appears in menus and toolbars. You can also bind keyboard shortcuts to plugin actions for quick access.
Assign keyboard shortcuts to your most frequently used plugin actions to speed up your workflow. Shortcuts are configured in the plugin manifest and work globally when the editor is focused.
Configurable Settings
Plugins support user-configurable settings so that behavior can be adjusted without modifying the plugin manifest. Settings are defined with the following field types:
- Text — a single-line text input
- Number — a numeric input with optional min/max constraints
- Select — a dropdown with predefined options
- Checkbox — a boolean toggle
- Textarea — a multi-line text input for longer values
Settings appear in the plugin’s configuration panel and their values are persisted across sessions.
Input Dialogs with Validation
Plugin actions can present input dialogs to collect information from the user before running. These dialogs support the same field types as plugin settings and include validation rules to ensure the user provides valid input before the action executes.
Use Cases
Here are some common ways to use plugins:
- Custom export formats — export your mind map to formats not included by default, such as a specific project management tool’s format or a custom template
- Automated node transformations — batch-rename nodes, apply formatting rules, or restructure branches based on patterns
- Integration with external tools — send map data to external services, import data from APIs, or sync with other applications
- Custom AI workflows — create specialized AI prompts, chain multiple AI operations together, or route AI requests through custom pipelines