I want Help With Custom Module Development in VCV Rack

Hey everyone,

I have been diving into module development for VCV Rack and having a blast but I am facing issu. I am new to the whole dev side of things & I want to know if anyone here has some tips for getting started with building custom modules.

I am trying to figure out how to work with the VST integration and handle more complex parameters in my modules . Anyone have any advice on structuring code for efficiency or better yet, resources or examples would be awesome.

I have also been thinking of incorporating Python for scripting certain aspects of my modules but I am not sure where it fits best within the VCV ecosystem. If anyone has used Python with VCV or knows how to make it work seamlessly I want to hear your experience.

I appreciate if anyone have any suggestion. It is been a bit of a trial-and-error journey so far and it would be great to hear how others approach things. Also i have check this Eurorack Modules You Want in VCV Rack witch help me out.

Thank you…:slight_smile:

To start I’d say look at the enormous collection of opensource modules, you can learn a lot from reading someone else’s code!

In what way do you think “VST integration” is involved with “more complex parameters”? You likely just need to look at VCV modules and not deal with the plugin version of Rack to achieve this.

Python is not very well suited as an embedded scripting language, it will make distribution of your plugin very difficult. The VCV Prototype module provided various languages for scripting/embedding, so maybe have a look at that and how to approach it: GitHub - VCVRack/VCV-Prototype

Way back, before Rack 2.0 there was also a LUA module from WrongPeople. It had polyphonic inputs and outputs, which gave it an advantage compared to the VCV prototype module (which also had LUA).

Not python - and neither is being maintained - but maybe also something to look into for inspiration.

1 Like

Of course Lua IS a good embedded scripting language. I think that’s why it exists, yes?

Indeed. That’s what it was primarily designed for; as opposed to TCL (if you get into Lua’s history) which only ran on Unix at the time. Plus it’s cross platform because the interpreter is written in ANSI C.

1 Like