Home

Awesome

🐺 WolfSound's Audio Plugin Template

Cmake workflow success badge

Want to create an audio plugin (e.g., a VST3 plugin) with C++ but don't know how to go about?

Heard about the JUCE C++ framework but not sure how to start a JUCE project?

Want to use CMake with JUCE but don't know how?

Want to be able to easily integrate third-party C++ libraries to your project?

Want to unit test your audio plugin?

Want to ensure maximum safety of your software?

And all this with a click of a button?

Well, this template allows you to immediately start your JUCE C++ framework audio plugin project with a CMake-based project structure. It involves

Additionally

I am personally using this template all the time.

Feel free to propose suggestions 😉

Usage

This is a template repository which means you can right click "Use this template" on GitHub and create your own repo out of it.

After cloning it locally, you can proceed with the usual CMake workflow.

In the main repo directory execute

$ cmake -S . -B build
$ cmake --build build

The first run will take the most time because the dependencies (CPM, JUCE, and googletest) need to be downloaded.

Alternatively, you can use bundled CMake presets:

$ cmake --preset default # uses the Ninja build system
$ cmake --build build
$ ctest --preset default

Existing presets are default, release, and Xcode.

To run clang-format on every commit, in the main directory execute

pre-commit install

(for this you may need to install pre-commit with pip: pip install pre-commit).

Don't forget to change "YourPluginName" to, well, your plugin name everywhere 😉

How was this template built?

See how I create this template step by step in this video:

Audio plugin template tutorial video