Designer Plugins
Plugins for Disguise Designer software.
Plugins for Disguise Designer software.
The Designer Plugin system provides a flexible framework that allows users to create HTML frontends that interact seamlessly with the Designer software. With this system, developers can extend the core functionality of Designer by integrating customised workflows, real-time data visualisation, and interactive controls. Plugins are powered by Python scripts that execute within a controlled environment, enabling communication between Designer and external services or devices. This integration empowers developers to enhance the user experience and add unique features to their projects.
Designer plugins can be categorised into two main types:
Local: Plugins found locally in the Plugins folder within the project folder (internal plugins)
Remote: Plugins discovered through DNS-SD (network-based plugins)
For detailed information about how Designer discovers and loads plugins, see the Plugin Discovery page.
The plugin architecture follows a frontend-backend separation principle, ensuring that different responsibilities are clearly delineated:
Since plugins are running and hosted outside of Designer, they can use any of the device’s capabilities via APIs. The power of plugins is to link these functions to Designer in a user interface widget that users can interact with as part of their Designer workflow. As imagined, a device manufacturer will design and host their own Designer plugin within their device, publishing it via DNS-SD to Disguise users.

It is envisaged that for the majority of applications, plugins will interface with Designer via the regular API. This provides fully crafted APIs which can be used to control and monitor Designer. Please see working with sessions for more details on how to work with sessions and directors.
For specific functionality, functions can be called within Designer using a Python console, via a web API. Details can be found in the Python Execution API page.
To understand the Python execution environment, including utility functions, restrictions, and best practices, see the Python Environment page.
To help you work with the Designer Python API, we’ve created a collection of practical guides covering common workflows and concepts:
These guides provide code examples and patterns for common tasks. For detailed API reference documentation, see the API Documentation.
Support for Designer Plugins can be found by contacting support@disguise.one for general Disguise support.