Sync
bae syncs your library across multiple devices through your cloud home. Every edit, import, and deletion propagates automatically.
Setting up sync
Section titled “Setting up sync”- Go to Settings > Sync
- Sign in with a cloud provider (Google Drive, Dropbox, OneDrive), use iCloud Drive (macOS), or enter S3 credentials
- bae generates a device ID and starts syncing
How it works
Section titled “How it works”Changes are synced incrementally — each edit produces a small changeset that is encrypted and pushed to the cloud home. Other devices pull and apply new changesets. bae syncs after every change and polls every 30 seconds to pick up changes from other devices. If the cloud home is unreachable, sync retries next cycle.
New devices bootstrap from a periodic full snapshot, then apply only the changesets that came after it.
Conflict resolution
Section titled “Conflict resolution”When two devices edit the same data, bae resolves conflicts automatically using last-writer-wins. If two devices edit different fields of the same release, both changes survive. True conflicts (same field edited on both sides) are resolved by timestamp. Deletes win over concurrent edits.
What syncs
Section titled “What syncs”- Metadata (albums, tracks, artists, labels)
- Album art and artist images
- Release files (if bae-managed)
Device-specific settings (config.yaml) do not sync.
Sync is not all-or-nothing:
- Solo, local only — no cloud home, no sync. Everything stays on one device.
- Solo, multiple devices — changesets sync between your devices via the cloud home.
- Shared library — multiple users sync through the same cloud home, each with their own device ID. See Collaborate.
Encryption
Section titled “Encryption”All data in the cloud home is encrypted before upload. The cloud provider never sees plaintext. See Encryption.