Build Your Own Instrument Panels
A full-screen layout editor for repositioning, resizing, and restyling every control on every sound provider's panel. Changes save to versionable JSON.
A Dedicated Editing Mode
Click EDIT LAYOUT on any provider and the app switches into a full-screen editor. The real panel is rendered live in the middle; panels on either side expose every element you can move.
- - Live preview of the instrument panel as it will appear in the app
- - ELEMENTS list on the left — hierarchical tree of every control and sub-element
- - PROPERTIES panel on the right — numeric x, y, width, font-size, visibility
- - Size controls (W+/W-/H+/H-) resize the canvas in 10-pixel steps
- - BORDERS toggle overlays dashed outlines to make layers easy to target
Drag, Select, Group
Drag any element to reposition it. Box-select or shift-click to build a multi-selection, then use GROUP to link them — grouped elements move together on any future drag.
- - Drag snaps to a 4-pixel grid for clean alignment
- - Box-select empty space to gather elements by area
- - Shift+click to toggle elements in and out of the selection
- - GROUP/UNGROUP persists linkages into the layout file
- - Shift+drag moves a grouped element together with its whole group
Every Sub-Element Is Addressable
Container sections like the preset browser, type selector, and action-button row expose every child — individual arrows, labels, displays, and buttons — so you can reflow them independently, not just shuffle them as a block.
- - Buttons row: DEL, CANCEL, MUTE, SOLO, PREVIEW, SAVE — each movable
- - Preset browser: category prev/display/next, name prev/display/next, LOAD, SAVE AS
- - Type selector: label, < arrow, type display, > arrow
- - Copy-from: label, < arrow, source display, > arrow, APPLY
- - Sliders break down further into label, track, and value-text positions
Fearless Editing
A 50-deep undo stack protects every drag and property change. RESET reloads the on-disk layout; CANCEL prompts before losing work; SAVE writes a clean, diff-friendly JSON file you can commit alongside your project.
- - Ctrl+Z undoes any change — drag, resize, property edit, group, delete
- - RESET reverts to the layout file on disk without leaving the editor
- - CANCEL prompts SAVE/DISCARD/BACK when there are unsaved changes
- - SAVE writes data/layouts/<provider>.json — human-readable JSON
- - Live mtime watching: hand-edit the JSON and the app picks it up instantly
One Editor, Five Providers
Every synth engine ships with its own layout file — customize them independently.
Cadenza
Waveform-based synth. Arrange envelope and waveform controls however you like.
Famiwave
Stepped 8-bit pulse/tri/noise. Minimal panel, maximum flexibility in layout.
SuperGaussKit
Gaussian-interp synth with a rich parameter set — worth investing in a custom layout.
NightFM
4-op FM synthesis. The densest panel in the app — the editor makes it manageable.
WAV Sampler
Sample playback with loop modes. Lay out sampling controls for your workflow.
Reshape the Interface
The panel is yours — move every knob, slider, and button to where your fingers already are.