Gen Plugin Export in the Package Manager
To make it easier to grab the official Gen Plugin Export starter materials (available on GitHub), it is now available as a package in the Package Manager!
This v2.0 release also brings the following improvements:
Support for newer versions of IDEs (Xcode 11 or Visual Studio 2019)
Upgrade to use JUCE 6
Helper patch overhauled
General UI improvements
Troubleshooting suggestions included
Clearer instructions about pre-requisites (including links to the VST SDK and IDE downloads)
The post export scripting is handled with Node for Max instead of requiring a Python installation (this also fixes some issues where spaces in filepaths would cause the script to fail)

With this update, we hope you will be able to get more quickly up and running with modern JUCE projects from your gen~ exports!
this is a great news !! Thank you for all the work.
nice work! is it possible to export gen~ code with dependencies to custom genexpr libraries, like the waveshaper tools from stkr for example?
@Bearded Clumsybear
Yes, you can include custom genexpr libraries in your export.
Good to know, thanks!
is there a proper way to sync LFOs to the BPM of DAWs in gen~ for the exported code, or do we have to implement this exclusively in JUCE?
I'm not aware of a way to do it natively in gen~.
I'm interested in the exact same thing, and it seems here is the way to look :
https://docs.juce.com/master/structAudioPlayHead_1_1CurrentPositionInfo.html
do you guys know of a new tutorial how to use the gen-plugin-export and get it into Juce?
I having huge problem with the cmake part of it. :)
Hi Kristinn,
I am working on new documentation with the upgrade to CMake. The main motivation for this upgrade was M1 compatibility, but it did break some of the old patcher scripts. If there are any specific errors you’re receiving when trying to build with CMake, please feel free to share those as well, and I can see if we can’t get it sorted out in the meantime. :)
I know it's a while, but to the BPM question.
add that code to process block:
int bpm;
auto playhead = getPlayHead();
if(playhead != nullptr) {
AudioPlayHead::CurrentPositionInfo positionInfo {};
const auto gotPositionInfo = playhead->getCurrentPosition(positionInfo);
if(gotPositionInfo) {
bpm = positionInfo.bpm;
}
}
Now you can send the bpm value to your bpm-Parameter in gen
Great news, thanks @D1RTY DUCK I will give it a shot
I took a quick look at this package... but I can already see that this is a brilliant tool. I'm delighted! I saw in a new light the possibilities offered by the code export from gen~. Thank you very much!
I only have one question: does code export and mechanisms in the package include buffer~ related features? On other words: if my gen~ code is accessing data stored in buffer~ object in the patch will the exported code handle this?
thanks again ;-)