duplicate-example

Create a new iPlug2 plugin project by duplicating an example template

$ 설치

git clone https://github.com/iPlug2/iPlug2 /tmp/iPlug2 && cp -r /tmp/iPlug2/.claude/skills/duplicate-example ~/.claude/skills/iPlug2

// tip: Run this command in your terminal to install the skill


name: duplicate-example description: Create a new iPlug2 plugin project by duplicating an example template

Clone an iPlug2 Example

Use this skill when the user wants to create a new plugin project from an iPlug2 example.

Workflow

  1. Ask for project details:

    • Plugin name (required): No spaces or special characters
    • Manufacturer name (required): Default to "AcmeInc" if not provided
    • Base template: Which example to clone from
  2. Available templates:

    TemplateDescription
    IPlugEffectBasic audio effect (volume control) - recommended for effects
    IPlugInstrumentMPE-capable polyphonic synth - recommended for instruments
    IPlugControlsWidget demonstration
    IPlugWebUIHTML/CSS/JS UI via WebView
    IPlugSwiftUISwiftUI for macOS/iOS
    IPlugSvelteUISvelte-based UI
  3. Run the duplicate script:

    cd Examples
    ./duplicate.py [SourceExample] [NewPluginName] [ManufacturerName]
    
  4. Customize config.h (offer to user):

    • PLUG_UNIQUE_ID - Auto-generated 4-char ID (verify it's unique)
    • PLUG_MFR_ID - 4-char manufacturer ID
    • Copyright, email, URLs - prompt but allow skipping
  5. Warn about sensitive settings:

    • Don't change BUNDLE_NAME without updating plist files
    • Keep config.h free of #include statements

Example

cd Examples
./duplicate.py IPlugEffect MyGainPlugin MyCompany

Creates Examples/MyGainPlugin/ with all project files renamed and configured.