cabbage3docs

Cabbage 3 includes a variety of standard plugin controls such as sliders and buttons. However, it also provides straightforward options for creating your own custom elements. There are two primary methods for building custom UIs:

  1. Custom Widget Classes

    Create new widget classes and add them to Cabbage. This approach allows you to develop custom widgets while retaining the convenience of the editing tools available in the Cabbage VS Code extension. To achieve this, follow these steps:

  1. Entirely new web-based interfaces

    You can design an entirely new web-based interface using any framework you prefer. To ensure communication with the Csound/Cabbage plugin, you’ll need to include the cabbage.js file, which contains some basic functions to send data to Csound from teh web UI. While this method does not offer access to the UI editing tools in Cabbage, it provides maximum freedom to design and implement unique UIs tailored to your needs.

    You will also need to implement some kind of ‘updateWidget’ listener in order to receive update data from Csound. Please look through cabbage/main.js file for details on how this is done using the in-built widgets.

    Note: You must add dummy parameters to the Cabbage section so that the software can set up the necessary channels and plugin parameters.