SamplySync is a macOS JUCE VST3/AU plugin that brings Samply comments, versions, replies, timestamps, and loop ranges into a DAW session.
The plugin is audio pass-through. It does not process sound. Its job is to keep Samply feedback visible beside the project and to provide quick actions such as refreshing the linked JSON, posting comments/replies, copying or jumping to timestamps, and opening the linked Samply stack in an external browser.
- User Guide: install, connect Samply, create JSON, use the plugin.
- Build And Developer Guide: local setup, build scripts, signing, repo layout.
- Troubleshooting: common problems and fixes.
- Architecture Summary: plugin/helper split and sync rules.
- Product Spec: product notes and feature intent.
- Displays Samply comments and replies inside VST3/AU hosts.
- Shows comment timestamps and optional loop ranges.
- Supports multiple Samply versions for the linked stack.
- Refreshes Samply data into a project-local JSON file.
- Posts new comments and replies back to Samply.
- Tracks done/completed status locally in the project JSON.
- Opens the linked Samply stack/player in the external system browser.
- Stores API profiles locally on each user's machine, not in the repository.
SamplySync has three main parts:
Source/: JUCE plugin source for the VST3/AU.apps/native-helper/: native Swift helper embedded into the plugin bundle.samply_notes_link.json: project-local bridge file created next to the DAW project.
The helper talks to the Samply API and writes the JSON link file. The plugin reads that JSON asynchronously and keeps audio processing pass-through and realtime-safe.
- macOS
- Xcode with command line tools
- JUCE if regenerating the Xcode project from
SamplySync.jucer - A Samply API key for runtime use
- Optional Apple Developer ID signing identity for install/sign flows
Optional DAW transport UI automation may require macOS Accessibility permission.
Normal sync, comments, replies, JSON refresh, and OPEN SAMPLY do not.
Build both VST3 and AU:
zsh tools/dev/build_release_plugins.shBuild, sign, and install system-wide:
DEV_ID_APP_CERT="Developer ID Application: Your Name (TEAMID)" \
zsh tools/dev/build_release_plugins.sh --installSystem install locations are /Library/Audio/Plug-Ins/VST3 and
/Library/Audio/Plug-Ins/Components.
For more detail, see Build And Developer Guide.
Do not commit API keys, local user profiles, .env files, generated plugin
bundles, Xcode build output, or real samply_notes_link.json files. Runtime
profile data is stored locally under the user's Application Support folder.
The repository .gitignore is set up to keep local/generated data out of Git.
SamplySync is currently macOS-focused and source-first. This repository does not include packaged releases or installers.
