# Fire: a multiband distortion plugin for AU, VST3 and CLAP hosts

> Fire is a C++23 audio effect built on JUCE that splits a signal into band and master chains with analogue-style distortion, modulation, delay, reverb and granular processing, shipped as AU, VST3 and CLAP under AGPL-3.0.

**jerryuhoo/Fire** — This is a mutiband distortion plugin.

- Repository: https://github.com/jerryuhoo/Fire
- Website: https://www.bluewingsmusic.com/fire.html
- Stars: 648 · Forks: 27
- Language: C++
- License: AGPL-3.0
- Published: 2026-10-21 · Updated: 2026-10-21 · Language: en
- Canonical page: https://hysenlabs.com/projects/jerryuhoo-fire

## An audio effect that splits the signal into bands

Fire is a multiband distortion and modulation effect for AU, VST3 and CLAP hosts. The description of what it does is dense but concrete: you build independent Band and Master effect chains, and inside those chains you get analogue distortion colours, dynamics, modulation, delay, reverb and granular processing. The plugin is an audio effect, so the documentation is explicit that you put it on an audio or instrument track after the instrument rather than as an instrument itself. The preset library is large enough to be a reason on its own, with 236 factory presets spread across eleven collections, including 36 scenes dedicated to Analog Drive. The audience is producers who want a sound to start from and then want the underlying chain to be editable, because the Band Lab and Master Lab views expose the chain rather than presenting a single macro.

## Four skins over one DSP, and what changing a skin does not touch

The interface ships four skins. The Vintage skin is called out as a walnut cabinet with hardware controls and tube filaments that respond to the input level, and the Modern skin is a graphite and aluminium studio tape look with reels driven by the signal. The other two, Paper and Ink, are minimal line-art skins in warm paper with dark ink and in the blue-black page colours of the project website. The important constraint is that all four share the same DSP, and you pick one from Menu, Skin, or from Settings. Switching appearance leaves presets, processing and the undo history untouched, and the selected appearance persists locally. That is a deliberate separation between what you hear and what you see, and it means a skin is not a preset, even when the two look as different as a walnut cabinet and a line drawing.

## Copying the release archive into the plug-in folder by hand

There is no installer. The install route is to unzip the archive from the official releases page, close your DAW, and copy the formats you want into the folders for your platform, then restart or rescan plug-ins in the DAW. On macOS the VST3 bundle goes to ~/Library/Audio/Plug-Ins/VST3/, the Audio Unit to ~/Library/Audio/Plug-Ins/Components/ and the CLAP plug-in to ~/Library/Audio/Plug-Ins/CLAP/. On Windows the VST3 and CLAP files go under Common Files in Program Files, and on Linux they go to ~/.vst3/ and ~/.clap/. There is no Audio Unit on Windows or Linux, as the table makes clear. You create a missing user folder if needed, Windows system folders may ask for administrator permission, and some DAWs let you add a custom CLAP search path instead. macOS archives carry both Apple silicon and Intel code.

## Ad-hoc signed and not notarized: what macOS will do

This is the part of the install that trips people up. The documentation states that current public builds carry an ad-hoc code signature and have not been Apple-notarized, so macOS may block the downloaded plug-in. The route the project gives is System Settings, Privacy and Security, Open Anyway, if macOS offers that action for the blocked plug-in. The alternative is to remove only the quarantine attribute after copying the plug-in into your user folder:
```sh
xattr -rd com.apple.quarantine "$HOME/Library/Audio/Plug-Ins/VST3/Fire.vst3"
xattr -rd com.apple.quarantine "$HOME/Library/Audio/Plug-Ins/Components/Fire.component"
xattr -rd com.apple.quarantine "$HOME/Library/Audio/Plug-Ins/CLAP/Fire.clap"
```
Run only the commands for the formats you installed. The shipped bundles are already signed and their signatures should not be replaced, and the guidance is to download a fresh archive if verification fails rather than editing bundle contents. Future Developer ID releases will state their notarization status in the release notes.

## Building with CMake, a pinned JUCE 9.0.3 and C++23

The source route needs a compiler with C++23 language-mode support, and the project pins JUCE 9.0.3 in its JUCE submodule, which is why submodules must be initialised before building. Projucer 9.0.3 is the version to use when re-saving Fire.jucer. The build also applies a version-pinned callback lifetime guard patch from cmake-overrides, which protects controls whose host deletes their editor during a gesture or enablement notification, and the patch refuses to apply if the dependency revision or the edited source does not match. To produce bundles without installing them into your plug-in folders:
```sh
cmake -S . -B Builds/Release -G Ninja -DCMAKE_BUILD_TYPE=Release -DFIRE_INSTALL_PLUGINS=OFF
cmake --build Builds/Release --target Fire_AU Fire_VST3 Fire_CLAP -j6
```
The AU target exists on macOS only, the bundles land under Builds/Release/Fire_artefacts/Release/, and fresh Debug and multi-configuration builds default to FIRE_INSTALL_PLUGINS=OFF while an existing cache is preserved. Use Release builds when auditioning in a host.

## First sound, band lab and local diagnostics

The documented path to a first sound is short. Insert Fire on a track that is playing audio and open the preset name field, choose a collection, click a sound, then shape it with the main macros or switch to Band Lab or Master Lab to edit the chain. You adjust the band and global Mix and Output to compare at a similar loudness, which matters because a distortion that sounds louder can be quieter at the same output level. Menu, Settings also shows the loaded version, build, format and audio configuration, and Copy diagnostics puts that information on the clipboard for a bug report. The documentation states that nothing is sent automatically, which is worth noting for a plugin that reports its build and format on request.

## AGPL-3.0 for the code, separate terms for the artwork

The repository is licensed under AGPL-3.0, and the tree carries LICENSE.md alongside ART_LICENSE.md, which implies that the artwork and bundled assets are not covered by the same terms as the source. This is not legal advice, and the point to take away is procedural: if you redistribute Fire, or make a modified build available to users over a network, the AGPL text and the separate asset terms are the two documents your distribution review has to cover. For a plugin distributed as a binary to end users, that review is a real step rather than a formality, and it is the main reason the licence matters here. The rest of the repository follows the usual JUCE shape, with Source/, modules/, tests/, benchmarks/, cmake/, cmake-overrides/, packaging/ and tools/ at the top level, plus a Fire.jucer project file and a VERSION file.

## Where Fire is the wrong tool

The alternative approach is the one most sessions already use: a single distortion or saturation stage inside the host, applied once to the whole signal. The difference is in what you can do afterwards. A whole-signal drive shapes the entire spectrum together, while Fire lets you treat bands and master separately, layer modulation, delay, reverb and granular processing, and then compare versions against each other through the band and global Mix and Output controls. The cost of that capability is weight. The plugin is a C++23 JUCE application with a pinned JUCE submodule, a patched callback guard layer and three build targets, so a source install is a build project rather than a quick compile. For a single tone shaping task, a host-native distortion is faster and simpler. For a mix where different parts of the spectrum need different treatments, that host-native stage cannot follow.

## Conclusion

Fire fits producers who want distortion shaped per frequency band rather than applied once to the whole signal, and who are willing to work inside an AGPL-3.0 plugin and to copy files into system plug-in folders by hand. It does not fit a commercial release that needs a permissive licence, a notarized macOS build, or a plugin you can build with a plain compiler and no JUCE submodule. Before adopting it, download the release archive and check the folder paths for your platform, and on macOS expect to use Open Anyway or the xattr -rd quarantine commands, because the current public builds carry an ad-hoc signature and are not notarized.

## FAQ

### How do I install the Fire distortion plugin?

Unzip the archive from the official releases page, close your DAW, and copy the formats you want into the plug-in folders for your platform: ~/Library/Audio/Plug-Ins/VST3, Components and CLAP on macOS, the Common Files VST3 and CLAP directories on Windows, and ~/.vst3/ and ~/.clap/ on Linux. Restart or rescan plug-ins in the DAW afterwards.

### Why does macOS block Fire after I install it?

Current public builds carry an ad-hoc code signature and have not been notarized, so macOS may quarantine the plug-in. Use System Settings, Privacy and Security, Open Anyway, or remove the quarantine attribute with the xattr -rd com.apple.quarantine commands listed in the installation notes.

### How do I build Fire from source?

You need a compiler with C++23 support and the pinned JUCE 9.0.3 submodule initialised. Configure with cmake -S . -B Builds/Release -G Ninja -DCMAKE_BUILD_TYPE=Release -DFIRE_INSTALL_PLUGINS=OFF and then build the Fire_AU, Fire_VST3 and Fire_CLAP targets.

### Does Fire send diagnostics or telemetry to the developer?

No. Menu, Settings shows the loaded version, build, format and audio configuration, and Copy diagnostics copies that information locally for a bug report. Nothing is sent automatically.

### Under what license is Fire released?

The project is licensed under AGPL-3.0, with the license text in LICENSE.md. The repository also carries an ART_LICENSE.md, so the artwork and bundled assets are covered by separate terms from the source code.

## Sources

- [jerryuhoo/Fire on GitHub](https://github.com/jerryuhoo/Fire)
- [License: AGPL-3.0](https://github.com/jerryuhoo/Fire/blob/master/LICENSE)
- [Project website](https://www.bluewingsmusic.com/fire.html)
- [README](https://github.com/jerryuhoo/Fire/blob/master/README.md)
- [Releases](https://github.com/jerryuhoo/Fire/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/jerryuhoo-fire
