Plugins
Introduction
You can download (and write) Javascript plugins to extend NotePlan's command bar with /commands
to add features that are not available in the core app (works on Mac and iOS).
▶️ Watch Stacey introducing plugins here.
For example, the following plugin moves the currently opened note to another folder without using the mouse for drag & drop:
Or to display some details about the currently opened note, such as word, character, and line count:
Download or update available plugins directly in NotePlan's preferences on your Mac. It will download and check for updates in our official repository (if you are a developer, you can submit your plugins). On iOS, you can open the command bar (tap on the magnifier glass icon bottom right), then type “/install plugins”.
Right after downloading (and enabling the plugin) you can close the preferences and hit ⌘J
, then type /
and you should see a list of available commands. Alternatively, you can type /
anywhere in the editor to invoke a plugin command. If you want to see all commands in a list along with their plugins, you can use the plugin "Plugin Information & Tester" to generate a listing.
Plugins are saved locally in NotePlan's database folder (CloudKit) or in your iCloud Drive folder and synced between your devices. If you modify a plugin on your Mac, you will see the changes on your iOS devices as well.
In the plugin preferences you can open the folder (if you have never installed a plugin, the folder won't be existing yet):
Each plugin is saved into a separate folder having at least one setup file plugin.json
and one script file which is defined in the setup file (for example script.js
):
If you are a user and have plugin ideas, submit them here or ask in our Discord community in the #plugins
channel.
If you are a developer and want to contribute and build your plugins, join other developers on Discord (#plugin-dev
channel).
Next up: Create Command Bar plugins →
Jump to:
- Plugins (you're here)
- Create Plugins
- Javascript Plugin API
- Plugin Hooks
- Releasing a plugin