Plugin Development¶
Plugins integrate new devices, triggers, actions, and services natively into Indigo — distributed as a single .indigoPlugin bundle users can double-click to install. Plugins are written in Python against the same Indigo Object Model used for scripting, plus a declarative XML layer for configuration UI.
Where to start¶
Read the Plugin Developer's Guide first — bundle structure, Info.plist, and how the Indigo Plugin Host runs your code. Then grab the Indigo SDK and explore the example plugins; modifying an example that's close to your goal is the fastest path to a working plugin. The Building a Plugin tutorial walks through adding device types, actions, and event handlers.
If you haven't scripted Indigo before, skim the Scripting Tutorial first — plugin callbacks are ordinary IOM Python.
Reference¶
- plugin.py Method Reference —
PluginBaselifecycle methods and every callback hook. - Plugin XML Reference —
PluginConfig.xml,Devices.xml,Events.xml,Actions.xml,MenuItems.xml, and ConfigUI fields. - IOM Reference — the object model shared with scripting.
- Python Packages — what's bundled and how to vendor dependencies.
Distributing your plugin¶
Submit finished plugins to the Indigo Plugin Store from your Indigo account.