skills/catalog/audio/juce-framework/SKILL.md
--- name: juce-framework description: Use for JUCE audio apps/plugins: AudioProcessor lifecycle, VST3/AU targets, parameter systems, and thread separation. Requires audio-engineering-principles. Not for game-audio middleware or non-JUCE frameworks. --- Requires: audio-engineering-principles May use: dsp-algorithms, audio-systems ## Purpose Builds production-quality JUCE-based software: standalone apps, plugin targets (VST3/AU), shared DSP cores, parameter systems, UI wiring, and host/device in
npx skillsauth add erikstmartin/dotfiles skills/catalog/audio/juce-frameworkInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Requires: audio-engineering-principles May use: dsp-algorithms, audio-systems
Builds production-quality JUCE-based software: standalone apps, plugin targets (VST3/AU), shared DSP cores, parameter systems, UI wiring, and host/device interoperability.
This skill covers both:
class MyProcessor : public juce::AudioProcessor {
void prepareToPlay(double sampleRate, int samplesPerBlock) override {
// Preallocate here — NO allocation in processBlock
filter.setLowpass(1000.0f, 0.707f, (float)sampleRate);
}
void processBlock(juce::AudioBuffer<float>& buffer, juce::MidiBuffer&) override {
juce::ScopedNoDenormals noDenormals;
for (int ch = 0; ch < buffer.getNumChannels(); ++ch) {
auto* data = buffer.getWritePointer(ch);
for (int i = 0; i < buffer.getNumSamples(); ++i)
data[i] = filter.process(data[i]);
}
}
};
testing
Use when creating new skills, editing existing skills, or verifying skills work before deployment
development
Use when you have a spec or requirements for a multi-step task, before touching code
data-ai
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
tools
Use when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions