Skip to content
SoundSyncAudio software platform

Package guide

SoundSync JUCE Package

The JUCE package is complete and current for adding native licensing, activation, validation, deactivation, offline grace, subscriptions, branding, and customer access to JUCE plugins and apps.

Live Moonwave FX products workspace showing the SoundSync product management surface for audio software releases.
Live Moonwave FX analytics workspace showing revenue, product, customer, activation, and download reporting.
Live Moonwave FX customers workspace showing customer management and activity for the developer account.

SoundSync

JUCE login activation

The JUCE login activation screen shows the branded activation-required state and customer account path.

Moonwave FX JUCE login activation screen with product identity, account login, and activation-required state.
JUCE login activation

SoundSync

JUCE serial validation

The JUCE serial validation screen shows serial entry, customer email capture, validation action, and activation-required context.

Moonwave FX JUCE serial activation screen with serial entry, customer email field, and activation-required state.
JUCE serial activation

SoundSync

JUCE Store catalog

The JUCE Store screen shows product browsing, customer navigation, and the in-app storefront surface connected to SoundSync product records.

Moonwave FX JUCE in-app Store catalog showing available products, product cards, and customer navigation.
JUCE in-app store catalog

SoundSync

JUCE product detail

The JUCE product detail screen shows product artwork, product information, and customer navigation through the connected storefront surface.

Moonwave FX JUCE product detail view with product artwork, product information, and buy/view action.
JUCE in-app product detail

SoundSync

JUCE Store and My Products

The JUCE customer screens show in-plugin product browsing, product detail, ownership, serial state, and device deactivation controls.

Moonwave FX JUCE My Products view with sanitized customer identity, owned product, serial state, and device deactivation actions.
JUCE My Products

SoundSync

Package file map

The generated production package carries source, docs, examples, module metadata, and native bridge files.

AreaPurposeDeveloper action
CMakeLists.txtBuilds the package, examples, and tests.Add the package to the product build and keep CI running it.
modules/soundsync_juceJUCE module wrapper for the package.Use when your project consumes JUCE modules directly.
include/soundsync/jucePublic headers for client, config, branding, components, and state.Include these from your plugin UI/business layer, not processBlock.
srcJUCE client, dispatcher, branding, public state, look-and-feel, and license components.Treat package files as package-owned; customize through your UI layer.
nativeShared native licensing core used for transport, storage, device, cache, and entitlement decisions.Do not fork licensing policy from native core.
examplesPlugin and standalone examples.Use as wiring references, then adapt to your final product.
DocsQuickStart, lifecycle, storage, device identity, offline grace, subscriptions, troubleshooting, and release checklist.Follow before release testing and regeneration.

SoundSync

Implementation sequence

Keep the package on a background-safe path and gate product behavior from public state.

  1. Prepare product

    Set product identity, license mode, activation mode, delivery, subscription state, support, and Brand Manager values.

  2. Generate package

    Download or create the JUCE package for the product and environment.

  3. Wire package

    Add the module or CMake target, initialize config, storage, device identity, logger, and dispatcher.

  4. Render UI

    Use the supplied components or map SoundSyncJucePublicState into your own UI.

  5. Activate and validate

    Test serial, account, email, validation, deactivation, offline grace, and subscription states with fixtures before live release.

  6. Ship carefully

    Run host/format/OS release tests for the exact targets you publish.

Audio-thread rule

Never perform SoundSync network, storage, activation, validation, or deactivation work from the audio thread. Use package state such as mayOpenProduct to gate protected behavior outside processBlock.