Sound
Interaction feedback via @ketryon/sound.
Every real interaction in the composer and timeline plays a distinct
sound from @ketryon/sound's curated "Playful" pack — not a single
shared tick reused everywhere, which was a real bug caught early on
(toggle, close-modal, and attach-screenshot all sounded identical).
const playTickSound = () => playPatchSound("tab-switch");
export const playAddSound = () => playPatchSound("pop");
export const playAttachSound = () => playPatchSound("select");
export const playOpenSound = playTickSound;
export const playCloseSound = playTickSound;
export const playOpenSound = () => playPatchSound("expand");
export const playCloseSound = () => playPatchSound("collapse");
Rule of thumb
If two different actions are about to share a sound, that's usually a sign they need their own, not that the shared one is fine — a user who can't tell two interactions apart by sound alone will assume something's broken.