An easier way to discover modules

Hey everyone,

I really like the way you can easily filter modules in VCV Rack 1.0. I had a look around and couldn’t find anything like it. So I was inspired to begin working on something similar, except with the ability to filter across all published modules.

This is what I’ve come up with so far: https://vcvm.netlify.com/. It’s pretty simple at the moment and would be great to improve upon. Obvious improvements would be to display an image for each module, allow for installation (similar to the main package index, if possible?) and also some way to automatically update the index.

It would be great if anyone is interested in contributing, the source can be found here: https://github.com/dburles/vcvm

Feedback, thoughts are welcome.

Dave

7 Likes

Hi, thanks for this. Sometimes I think a patch in my mind, while having access to a web browser, but not to Rack. This tool is handy to choose the modules to start with.

It may also be useful to those waiting for their favorite modules to be updated to v1, and looking for replacements/alternatives.

Can’t help with code myself…just a couple of reminders to those who can:

1 Like

Why not just use GitHub - VCVRack/library: Database for the VCV Library? Hundreds of hours have gone into making this organized database for you. Your website is missing several brands, like VCV.

What’s nice about his site is you can 1) find individual modules and 2) locate them by tag. Select Function Generator, and it shows you all the FG’s in his site and who makes them along with links. There’s value in that because if I’m looking for something specific and not finding it in the Library or VCV Broswer, I can use that site as a jumping off point for checking out new modules that may meet my needs.

Now, if the Library could eventually do those two things (individual module search + tag search), then I’d probably have no need for mixer’s site. Right now, I’ve been using to look stuff up and see what’s out there, compare it to what I have, fill some gaps, etc.

1 Like

My point is for you to use the VCV Library database for your website, since it seems you are not doing so. We’ve done most of the work for you. All you have to do is check out the git repo, parse the manifests, serve the page, and then get all the praise from users.

2 Likes

Only the free modules?

Great Freudian slip or greatest Freudian slip?

Oups! Thanks!

@Vortico That was a bit of an unexpected response! I’m not trying to step on any toes or “gain praise from users”, I’m aware that a lot of work has gone into the library and VCV Rack and I appreciate that. I’ve spent countless hours on open source myself (including now, time on this). I hadn’t actually planned on publishing it but I just figured it (or something like it) might be something the community could benefit from, I certainly had no intent to be in competition with any prior art, or official work.

I’m aware a few brands are missing at the moment and it’s only the free modules, the plan to automatically update the database was to utilise the library, but it’s just not automated yet, but it’s how I got the initial data.

@mixer The miRack index is great with the images!

No problem. My odd reaction was because several web designers have asked us for a database like this, and after providing it, requiring major architectural changes to the way Rack loads plugins and hours of collective work from developers porting their plugin into this easy-to-parse format, the original suggesters disappeared from the Earth, and the first web app I’ve seen doesn’t even use the database we created in response to their suggestions. But it sounds like you plan to use the VCV Library database, so all is good.

3 Likes

All good, I can understand your frustration there! Also, I’ve just pushed an update to address the missing modules :slight_smile:

3 Likes

Only thing about the list is it shows modules that should not be seen. Modules that are "disable": true in manifests. This could cause confusion and frustration for users searching the database and developers. Some of those modules might be ongoing works that are not yet ready to be known.

1 Like

A few organizational bugs:

  • The brand column is using .name of the manifest. It should use .brand or if it doesn’t exist, .name.
  • You should validate plugin tags against https://github.com/VCVRack/Rack/blob/v1/src/plugin.cpp#L548 to make sure they match (case insensitive) before displaying a choice in the Tags column. For example, “xor” is not a valid tag.
  • The correct term is “Rack modules”. There are currently only 10 VCV plugins: Core, Fundamental, Pulse Matrix, Router, etc.
1 Like

Ah yes, I had noticed that field. I’ll update it to exclude those.

1 Like
  • The brand column is using .name of the manifest. It should use .brand or if it doesn’t exist, .name .

Gotcha, thanks!

How likely are they to change? Would it be fine to embed a copy of them in the app to validate against?

  • The correct term is “Rack modules”. There are currently only 10 VCV plugins: Core, Fundamental, Pulse Matrix, Router, etc.

Thanks

Could change at any moment. Best solution is to just copy-paste from the source for now.

Is there any possibility to automate the process of generating screenshots for modules? I wonder if it might be a solution to solving the complexity around users providing their own.

Install them and run ./Rack -p <zoom> to dump them into <Rack user folder>/screenshots/. This feature is temporarily disabled on Mac due to Apple’s dumb app translocation “security”.

1 Like

Have you considered the idea of automating it as part of the process of publishing new releases? A git hook on the library could trigger a machine to generate and publish the required screenshots.

Yes, when the future VCV Library web app is available at library.vcvrack.com later this year.