Skip to content

feat: suite preset system — factory/user/default presets with import/export #61

Description

@yves-vogl

Suite-wide requirement (Yves, 2026-07-15): every Basilica Audio plugin ships a full preset system in M2, modeled on the state of the art in commercial plugins (Neural DSP preset browser, UA/Waves preset workflows — do a reference-UX research pass at implementation time).

Requirements

  • Factory presets — read-only, versioned with the plugin binary (BinaryData), musically useful starting points per use case; at least 6–10 per plugin.
  • Default preset — loaded on a fresh instance; user can redefine ("Set as default") and reset to factory default.
  • User presets — create / save / save-as / rename / delete / overwrite, stored in the platform-standard location (~/Library/Audio/Presets/Yves Vogl/<Plugin>/ on macOS, %APPDATA% equivalent on Windows).
  • Editable & dirty state — current preset name shown in the editor with a modified indicator (*), prev/next preset navigation.
  • Import / Export — single presets and banks as files (JSON-based format carrying plugin ID, plugin version and parameter values; forward-compatible: unknown params ignored, missing params take defaults).
  • Underlying mechanism: APVTS state (already round-trip tested); the preset layer must not bypass parameter attachments or automation.
  • Tests: preset save/load round-trip, factory preset integrity, import of a previous-version preset file, default-preset behavior on fresh instance.

GUI polish for the browser itself may land with M3; the engine, file format, factory content and a functional chooser belong to M2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions