https://github.com/plugdata-team/plugdata-plugin-export
Template for plugdata plugin exports
https://github.com/plugdata-team/plugdata-plugin-export
Last synced: 10 months ago
JSON representation
Template for plugdata plugin exports
- Host: GitHub
- URL: https://github.com/plugdata-team/plugdata-plugin-export
- Owner: plugdata-team
- Created: 2025-07-30T17:14:27.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-07-30T22:02:14.000Z (11 months ago)
- Last Synced: 2025-07-30T22:14:20.823Z (11 months ago)
- Language: Python
- Size: 56.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# Automated build script for plugdata powered plugins
Note: this is currently still in development, don't use this in production yet!
1. Fork this repository.
2. Click on the "Actions" tab and enable github actions
3. Add your patch files and plugin definitions to config.json.
4. Wait for GitHub Actions to complete the build.
5. Download your VST3 / AU / CLAP / LV2 / Standalone plugins!
# Config syntax
Example:
```
[
{
"name": "N-SPEC COMP LITE 2",
"author": "Nasko",
"path": "Plugins/N-SPEC COMP LITE 2.zip",
"formats": ["VST3", "AU", "LV2", "CLAP"],
"type": "fx",
"version": "1.0.0",
"enable_gem": false,
"enable_sfizz": false,
"enable_ffmpeg": false
},
{
"name": "N-TILT",
"author": "Nasko",
"path": "Plugins/N-TILT.zip",
"formats": ["Standalone"],
"type": "fx",
"version": "1.0.0",
"enable_gem": false,
"enable_sfizz": false,
"enable_ffmpeg": false
}
]
```
## Parameter Reference
### Required Fields
| Field | Type | Description |
|-----------|----------|-------------|
| `name` | `string` | **Unique name** of the plugin. This is how it will appear in your DAW.
_Note: You cannot load two plugdata plugins with the same name._ |
| `author` | `string` | Name of the plugin's creator, displayed inside the DAW. |
| `path` | `string` | Path to the patch location within the repository. Can be a **folder** or a **.zip** file. |
| `formats` | `array` | List of plugin formats to build. Valid values: `VST3`, `AU`, `CLAP`, `LV2`, `Standalone`. |
| `type` | `string` | Type of plugin: either `"fx"` for effects or `"instrument"` for instruments/synths. |
---
### Optional Fields
| Field | Type | Description |
|------------------|-----------|-------------|
| `version` | `string` | Plugin version, new versions will not install correctly unless you increment this.
_Default: `1.0.0`_ |
| `enable_gem` | `boolean` | Enables experimental [GEM](https://puredata.info/downloads/Gem) support
_Default: `false`_ |
| `enable_sfizz` | `boolean` | Enables the `[sfz~]` object for SFZ sample playback.
_Default: `false`_ |
| `enable_ffmpeg` | `boolean` | Enables FFmpeg-based audio objects.
Recommended if your patch plays audio files.
_Default: `false`_ |
# Running locally
You can also run the build script locally instead of through github actions:
```
python3 build.py
```
You can use the `--generator` flag to set the project cmake generates. Valid values are `xcode`, `visualstudio` or `ninja` (default).
Aditionally, you can use the `--configure-only` flag if you want to skip the build step.
# Licensing note
After building, the original patch file you used is directly accessible via the “Info” menu in the plugin. This is required to comply with the GPL license (required by both plugdata and the JUCE GPL tier), as your patch could now legally be considered as "source code" of the generated plugins.