My concerning and suggestions…
Making AU instruments instead of AU Effects. When using Apple’s AU SDK, we usually use different base classes for instruments/effects/music effects.
Parameters types and value range should be defined in the JUCE’s audio filter class. AU (and RTAS…) need parameter type (generic float, on/off, indexed, gain, Hz, time, and so on…). If it is not defined, there will be problem in automation and controling from control surface like Mackie Control and displaying values in host.
Regarding keyboard events, we should pass through key down/up events for unused key events. For example, when we only need cursor key, other key events should be passed to host application. Otherwise we can’t use space key for starting host’s sequence. (The event handler should return eventNotHandledErr when our components didn’t process the key event)
Drag and Drop. Some developers want to drag their MIDI/Audio data into host’s arrangement window or desktop.
Im so sorry for many oppinions…