A pure python script for automatically loading your plugin during development

While developing my plugin, I wrote a utility script to watch my main.js/styles.css/manifest.json for changes, and automatically copy them into the plugins folder of my obsidian sandbox. I published it with my plugin here.

The utility script does not require a virtual environment or have dependencies, it can just be dropped into your root directory and ran via python3 -m pluginloader.

When using, be sure to refresh your plugins or window (from within the app) to load any changes.

Copy the files once and quit

python3 -m pluginloader

Copy the files once and quit, using a custom path to your sandbox vault and project root

python3 -m pluginloader --dotobsidian "path/to/your/obsidian/sandbox/vault/.obsidian" --dev-dir "path/to/your/plugin/source/code/root/directory"

Watch for changes in your files and copy them when they change

python3 -m pluginloader --onchange

The dotobsidian path does not necessarily need to be your sandbox. It can be any vault’s .obsidian directory.