Releases: User1334/VibeBar
0.14.0 (14)
0.14.0 (14)
VibeBar 0.14.0 (14) – The Mask
This release introduces control.
Not over how VibeBar looks —
but over what it shares.
Added
Absolute Privacy Mode
VibeBar can now be fully silenced — without breaking presence.
When enabled:
- all track-specific information is suppressed
- a generic fallback presence is sent instead
This ensures:
- no personal listening data is exposed
- Discord activity remains valid and stable
Privacy 0.5 (Selective Filtering)
A more flexible approach to privacy.
Tracks can now be filtered via a blocklist:
- Match by title, artist, or album
- Optional “contains” matching
When a track is filtered:
- no track data is exposed
- a generic fallback presence is used instead
Quick Blocklist Action (Menu Bar)
The currently playing track can now be added to the blocklist directly from the menu bar.
This allows:
- fast reaction without opening Settings
- immediate control over what gets shared
It does not introduce a new system —
it removes friction from using it.
Privacy Status Indicator (Menu Bar)
The menu bar icon now reflects privacy state:
- Green → normal presence active
- Blue → privacy mode active (generic payload)
This provides immediate visual feedback without opening the app.
Static Presence Image Selection
Static Large and Small images can now be selected from a predefined list.
This allows:
- more consistent presence setups
- less repetitive static configurations
Stale Reconnect Timer
VibeBar now reconnects automatically after extended inactivity.
- Triggered ~30 minutes after a pause or stop payload
- Prevents silent connection drops
- Ensures presence updates don’t get lost over time
Improvements
Settings Structure
- Settings have been reorganized
- Several options moved into the Draft system
- Clearer separation between active and experimental features
Debounce Adjustments
- More stable update timing
- Reduced unnecessary presence refreshes
- Better handling of rapid track changes
Fixed
Presence Reliability Edge Cases
- Reduced cases where payloads were sent into stale connections
- Improved behavior after pause/stop transitions
Compatibility
Apple Music playback continues to be supported via:
- AppleScript (local library tracks)
- MediaRemote Adapter (streamed content, macOS 26+)
Known Behavior
Privacy modes replace track data with a generic fallback presence.
No identifiable playback information is sent.
Installation
- Download the updated
.dmgfrom the Releases page - Move VibeBar.app to your Applications folder
- Launch and grant Automation permissions if required
Closing Note
This update does not remove presence.
It puts a mask over it.
0.13.1 (13)
0.13.1 (13)
VibeBar 0.13.1 (13) – The Linker
This release focuses on reliability.
macOS 26 introduced changes that prevented VibeBar from relaunching itself correctly in certain situations.
Version 0.13.1 refines the restart mechanism to ensure consistent behavior across supported macOS versions.
No new direction.
Just stability where it matters.
Fixed
Reliable Self-Restart on macOS 26.3+
VibeBar now uses the modern NSWorkspace.openApplication API for relaunching.
This resolves cases where:
- the app failed to restart
- Discord presence stopped updating after relaunch attempts
- the previous restart logic silently failed on newer macOS versions
A lightweight shell fallback remains in place for additional safety.
Added
Optional “Restart VibeBar” Menu Item
A dedicated restart entry can now be shown in the menu bar.
This allows quick manual recovery if:
- Discord presence becomes desynchronized
- Apple Music transitions leave the activity in an inconsistent state
- a restart is required after certain system changes
The menu item can be enabled or disabled in Settings.
It does not introduce a new workflow —
it makes recovery explicit.
Improvements
Cleaner Restart Lifecycle
- Current instance now terminates only after relaunch is triggered
- Reduced edge cases involving duplicate instances
- More predictable relaunch timing
Compatibility
Apple Music playback continues to be supported via:
- AppleScript (local library tracks)
- MediaRemote Adapter (streamed content, macOS 26+)
Known Issues
Switching playback source may still require a manual restart.
MediaRemote Adapter transitional states may occasionally lag behind rapid track changes.
Installation
- Download the updated
.dmgfrom the Releases page - Move VibeBar.app to your Applications folder
- Launch and grant Automation permissions if required
Closing Note
This update does not introduce a new feature set —
it restores expected behavior.
Sometimes reliability is the feature.
0.13.0 (12)
0.13.0 (12)
VibeBar 0.13.0 (12) – The Linker
This release focuses on interaction and parity:
bringing Apple Music Rich Presence closer to what users expect from modern Discord music integrations.
With optional clickable links and finer control over activity visuals,
VibeBar now connects your Discord activity more directly to what you’re listening to —
without adding complexity or new workflows.
New Behavior
Optional Clickable Links in Discord Rich Presence
VibeBar can now attach URLs to Rich Presence fields, making the Presence card clickable in Discord.
When enabled, the following fields link to the current track:
- State
- Details
- Large Image
- Small Image
All fields are controlled by a single toggle for clarity and consistency.
Links are only sent when a valid track URL is available —
local files remain non-clickable by design.
Hide Small Image Option
A new toggle allows hiding the small image in the Discord activity card.
This gives you more control over how minimal or detailed your presence appears,
and allows a cleaner look if you prefer focusing on the main artwork and text.
Improvements
Presence Parity
Apple Music Rich Presence now behaves closer to its Spotify counterpart:
- clearer interaction
- predictable click behavior
- fewer visual edge cases
The goal is not to add novelty, but to make Apple Music feel native and equal in Discord.
Settings Defaults & Safety
- Clickable links can be enabled by default without causing broken interactions.
- URLs are omitted automatically when unavailable.
- No additional per-field toggles were added to keep Settings lean.
Codename
VibeBar 0.13.0 carries the codename “The Linker”.
Compatibility
No changes to supported macOS versions or playback sources.
Apple Music playback continues to be supported via:
- AppleScript (local library tracks)
- MediaRemote Adapter (streamed content, macOS 26+)
Known Issues
- Switching playback source still requires a manual restart.
- MediaRemote Adapter may still report transitional states inconsistently in rare cases.
- Rapid skipping may briefly desync artwork or timestamps.
Installation
- Download the
.dmgfrom the Releases page - Move VibeBar.app to your Applications folder
- Launch and grant Automation permissions
- Configure your settings and restart if prompted
Closing Note
This update does not introduce a new direction —
it refines an existing one.
VibeBar no longer just shows what’s playing.
It links you there.
Full Changelog: v0.12.2...v0.13.0
0.12.2 (11)
0.12.2 – The View
- Fixed a visual glitch on macOS 26.2 where the placeholder URL (
https://example.com/xyz) in the “Button 1 URL” and “Button 2 URL” fields was aligned incorrectly and overlapped the label text. - Localized a previously untranslated text string.
- Adjusted the minimum supported macOS version from 11.5 (introduced in 0.12.1) down to 11.0, so VibeBar now runs on all Big Sur releases.
0.12.1 (10)
VibeBar 0.12.1 – The View
Compatibility
- Lowered the minimum macOS version to 11.5 Big Sur.
- Basic functionality has been tested on Big Sur – if you run into 11.x–specific issues, please open an issue.
Improvements
- Small UI adjustments on older systems.
- Minor internal clean-ups and stability tweaks.
0.12.0 (9)
VibeBar 0.12.0 (9) – The View: Preview & Smarter Settings
This release focuses on the Settings experience, a new global draft/save flow,
and small but meaningful refinements to how VibeBar presents itself – both in the UI and in Discord.
VibeBar 0.12.0 adds a live Rich Presence preview (macOS 13+), optional startup checks,
and a new name field in the Discord payload for more control over how your presence appears.
New Behavior
-
Live Rich Presence Preview in Settings (macOS 13+)
- The Settings window now includes a preview that reflects presence-relevant changes in real time.
- As you adjust texts, toggles or buttons, the preview updates immediately and shows how your presence will look in Discord.
- The preview can be hidden via toggle if you prefer a more compact SettingsView.
- On macOS 12, the preview is not available and remains hidden for compatibility.
-
Global Draft System with Central Save Button
- "Connection & ID" & "Buttons" now use a global draft system instead of per-tab saving.
- Changes across all sections of the SettingsView are collected as a draft.
- Only when pressing the global “Save” button are all changes applied at once.
- This makes it clearer when changes become active and avoids partial/tab-based saves.
-
Optional Startup Checks
- Two new toggles control what VibeBar should check on launch:
- “Check if Apple Music is running on launch”
- “Check for updates on launch”
- Both checks can be enabled or disabled independently in Settings.
- Two new toggles control what VibeBar should check on launch:
-
New Discord Payload Field:
name- VibeBar now exposes the
namefield in the Discord Rich Presence payload. - With the default Client ID, you can choose between predefined names.
- With a custom Client ID, you can set your own application name.
- This allows a more personalized and identifiable presence in Discord.
- VibeBar now exposes the
-
Codename in About Window
- The About window now shows a version codename.
- VibeBar 0.12.0 carries the codename “The View”.
- (Internally, the previous version 0.11.0 was known as “The Bridge”.)
Improvements
-
Status Icon Manager Adjustments
- The StatusIconManager has been updated to better reflect:
- Connection state to Discord
- Transitional states (connecting, idle, waiting)
- Aims for more consistent state transitions and fewer visual edge cases in the menu bar icon.
- The StatusIconManager has been updated to better reflect:
-
Settings & Clarity
- The Settings layout has been adjusted to work with the new global draft system.
- Explanations for new toggles (Apple Music check, update check, preview visibility) were added or refined.
- Overall flow is now: edit → (optionally) review in preview (macOS 13+) → save globally.
Logic Adjustments
- Startup logic was updated to integrate:
- Optional Apple Music running check at launch.
- Optional update check at launch.
- The internal draft/apply cycle was simplified:
- Settings are now applied in a single global commit instead of per-tab commits.
- StatusIconManager integration points were updated to better align with actual connection lifecycle events.
Compatibility
| macOS Version | Supported Sources | Recommended Source | Notes |
|---|---|---|---|
| macOS 26+ | AppleScript MediaRemote Adapter ✅ |
MediaRemote Adapter ✅ | AppleScript cannot access streaming metadata |
| macOS 13 – 15 | AppleScript ✅ MediaRemote Adapter ✅ |
AppleScript (default) | Live Settings preview supported |
| macOS 12 | AppleScript ✅ MediaRemote Adapter ✅ |
AppleScript (default) | No Settings preview (hidden for compatibility) |
| macOS 12.4 (min.) | ✅ Supported | — | Legacy fallback only |
AppleScript remains available for local library tracks on macOS 26+,
but cannot access metadata from streamed content.
The MediaRemote Adapter continues to work across all supported macOS versions.
Installation
- Download the
.dmgfrom the Releases page - Move
VibeBar.appinto yourApplicationsfolder - Launch the app and grant Automation permissions
- Choose your playback source in Settings
- Restart when prompted
Known Issues
- Switching playback source still requires a manual restart of the app.
- MediaRemote Adapter may still not provide a perfectly reliable stopped state in all edge cases.
- Very rapid seeking or skipping can still cause short timing mismatches in presence updates.
- Dynamic covers may briefly show outdated artwork during initial startup or when switching tracks quickly.
- The live Settings preview is only available on macOS 13+ and is not shown on macOS 12.
Bundled Components
This app continues to bundle the following open-source component:
| Component | License | Purpose |
|---|---|---|
| MediaRemote Adapter | BSD-3-Clause | Reads real-time Apple Music data on macOS 26+ |
Following license requirements, the adapter’s license is included in the app bundle.
Acknowledgements
Special thanks to ungive for:
- Loon – providing dynamic album covers
- MediaRemote Adapter – enabling modern playback detection
VibeBar integrates these tools under their respective licenses.
Loon is not bundled and can be installed via the built-in installer.
MediaRemote Adapter is included and ready to use.
This update improves the view on what VibeBar is doing –
with live previews (on macOS 13+), clearer saving, and a presence that better matches your setup.
0.11.0 (8)
VibeBar 0.11.0 (8) – MediaRemote Adapter & macOS 26 Readiness
This release introduces the MediaRemote Adapter for accurate playback detection on macOS 26+, a new playback source selector, and a colored menu bar icon for clearer visual feedback.
It also improves logic for paused/stopped handling and maintains full support for Loon dynamic covers.
New Behavior
- New playback source selector in Settings:
- AppleScript – legacy mode, compatible with older macOS versions
- MediaRemote Adapter – real-time updates for macOS 26+
- On first launch:
- macOS 26+ → defaults to MediaRemote Adapter
- macOS 12–15 → defaults to AppleScript
- When playback source changes, a restart prompt appears with:
- Restart button
- Cancel option
- “Don’t show again” checkbox
- Restart required to apply playback source changes
- When the MediaRemote Adapter is active:
- Certain settings (e.g. Stopped Presence) are disabled
- Hidden or greyed-out with explanation
- Force Update menu item is automatically removed
Improvements
- App icon updated for macOS 26 (modern look & better scaling)
- Colored menu bar icon to visualize connection state:
- 🟢 Connected – presence is active
- 🟡 Waiting – paused or idle with hidden presence
- 🔴 Disconnected – connection lost to Discord
- New toggle in Settings: “Colored Status Badge”
- Updated settings layout with inline (?) help icons
Logic Adjustments
- Streamlined startup flow for first presence after app launch
Compatibility
| macOS Version | Supported Sources | Recommended Source | Notes |
|---|---|---|---|
| macOS 26+ | AppleScript MediaRemote Adapter ✅ |
MediaRemote Adapter ✅ | AppleScript cannot access streaming metadata |
| macOS 12 – 15 | AppleScript ✅ MediaRemote Adapter ✅ |
AppleScript (default) | Both sources work reliably |
| macOS 12.4 (min.) | ✅ Supported | — | Legacy fallback only |
AppleScript continues to work for local library tracks on macOS 26+,
but cannot access metadata from streamed content.
The MediaRemote Adapter is fully compatible across all supported macOS versions.
Installation
- Download the
.dmgfrom the Releases page - Move
VibeBar.appinto yourApplicationsfolder - Launch the app and grant Automation permissions
- Choose your playback source in Settings
- Restart when prompted
Known Issues
- Switching playback source requires manual restart
- MediaRemote Adapter currently lacks a reliable stopped state
- Rare timing mismatches when rapidly seeking or skipping tracks
- Dynamic covers may show old artwork briefly on startup
Bundled Components
This app now bundles the following open-source tools:
| Component | License | Purpose |
|---|---|---|
| MediaRemote Adapter | BSD-3-Clause | Reads real-time Apple Music data on macOS 26+ |
Following license requirements, the adapter’s license is included in the app bundle.
Acknowledgements
Special thanks to ungive for:
- Loon – providing dynamic album covers
- MediaRemote Adapter – enabling modern playback detection
VibeBar integrates these tools respectfully under their respective licenses.
Loon is not bundled and must be installed via the built-in installer.
MediaRemote Adapter is included and ready to use.
This update prepares VibeBar for the next macOS generation —
offering improved accuracy, flexibility, and clarity.
0.10.2 (7)
VibeBar 0.10.2 – Loon Awareness & Setup Flow
This release improves the integration with dynamic covers by adding better handling of missing Loon binaries.
It aims to reduce confusion and streamline the experience for users who upgrade from older versions.
New Behavior
- App now shows a clear popup on startup if dynamic covers are enabled but
Loonis missing - The popup offers 3 options: Install Loon, Switch to static mode, or Ignore
- Users switching to static mode are informed about future reminders when re-enabling dynamic covers
Improvements
- If
Loonis freshly installed, dynamic covers are automatically re-enabled after app restart - New fallback logic avoids showing dynamic toggle if
Loonwas deleted from the app bundle - Toggle syncing behavior improved across all OS versions
Logic Adjustments
- On fresh install of Loon via the script, the dynamic cover toggle activates automatically
- Toggle will not auto-reenable if user previously chose static mode manually
- The Loon install script now sets an AppStorage flag (
hasJustInstalledLoon) to help manage toggle state
Compatibility
| macOS Version | Support Level |
|---|---|
| macOS 15 (Sequoia) | Full feature support |
| macOS 13–14 | Partial support (some UI issues) |
| macOS 12.4+ | Legacy fallback only |
On older macOS versions, cover mode changes may require reopening settings or restarting the app.
Loon Handling
This app uses an external proxy tool called Loon, developed by ungive.
Important Notes
Loonis not bundled or redistributed with this app- This app provides an optional install script to fetch & compile
Loonlocally - The script now fetches a specific commit (retrieved from a server you control)
🚀 Installation
- Download the
.dmgfrom the Releases page - Move
VibeBar.appinto yourApplicationsfolder - Open the app and grant automation permissions when prompted
🧪 Known Issues
- Settings UI may desync under macOS 12–14
- Loon installation requires developer tools (Xcode CLT) on first use
- Discord Web is not supported – native client only
About Loon
This app can optionally use Loon, an external proxy tool developed by ungive.
Important Notice
Loonis not included in this repository and not distributed with this app.- Since the
loonrepository currently has no license, its code cannot be redistributed by third parties. - To stay compliant, this app only provides an optional install script.
- The script will download the
loonsource code directly from the original repository. - It will then compile and install
loonlocally on your machine. - At no point is
loonitself shipped or redistributed by this project.
- The script will download the
This is still a beta.
0.10.1 (6)
VibeBar 0.10.1 – Seek & Settings Patch
This patch focuses on improving presence accuracy and fixing unintended behavior in the settings system.
Seeks are now filtered more intelligently, and changes in custom client settings no longer apply prematurely.
Improvements
- Seek detection tuned to avoid false positives from internal timer drift
- Presence updates are now throttled if minor jumps (e.g. 3s) are detected
- Custom ID tab now only takes effect after clicking save, preventing unwanted asset override
- UI fields in the Custom ID section no longer sync prematurely with
@AppStorage
System Compatibility
| macOS Version | Support Level |
|---|---|
| macOS 15 (Sequoia) | Full feature support |
| macOS 13–14 | Partial support (experimental UI) |
| macOS 12.4+ | Legacy fallback mode only |
For the best experience, use macOS 15+.
Older systems may have UI refresh limitations or require reopening Settings after changes.
Known Issues
- On macOS 12–14, custom assets UI may not always show real-time changes
- Small playback jumps (e.g. during pause toggles or app nap) may still occasionally trigger presence
- Dynamic cover fallback behavior remains dependent on
loonreadiness
Changes from 0.10.0
- Improved: Seek/jump detection is now more robust and avoids overreacting to system quirks
- Fixed: Switching between default and custom ID no longer overrides presence until saved
- Cleaned: Settings state is properly remembered and won't mislead after reopening
- Tuned: Internal logs are now cleaner and less noisy
Installation
- Download the
.dmgfrom the Releases page - Move
VibeBar.appinto yourApplicationsfolder - Launch and grant automation permissions when asked
Notes
- macOS 12.4 or later required
- Discord must be running natively (web version not supported)
- Settings tabs now behave more predictably – save before you leave!
About Loon
This app can optionally use Loon, an external proxy tool developed by ungive.
Important Notice
Loonis not included in this repository and not distributed with this app.- Since the
loonrepository currently has no license, its code cannot be redistributed by third parties. - To stay compliant, this app only provides an optional install script.
- The script will download the
loonsource code directly from the original repository. - It will then compile and install
loonlocally on your machine. - At no point is
loonitself shipped or redistributed by this project.
- The script will download the
This is still a beta.
0.10.0 (5)
VibeBar 0.10.0 – Beta Polishing Update
This update refines the internal logic and improves the user experience introduced in 0.9.0.
UI syncing, update checking, and presence behavior have all been cleaned up.
New Features
- Optional autoupdate check (on app launch)
- Toggle to launch at login
- New payload field:
"status_display_type"for improved formatting on Discord - Added things hidden in the interface
Improvements
- UI structure made clearer across all supported macOS versions
- Dynamic covers (via
loon) now only trigger once per track, reducing overhead - Presence update now more accurate with improved seek detection logic
Custom Assets(details, state, image keys) now work as expected when enabled- Toggle syncing and view refreshes are more reliable (esp. on macOS 15)
System Compatibility
| macOS Version | Support Level |
|---|---|
| macOS 15 (Sequoia) | Full feature support |
| macOS 13–14 | Partial support (experimental UI) |
| macOS 12.4+ | Legacy fallback mode only |
Features like
.formStyle(.grouped), live toggle sync, and view-specific animations work best on macOS 15+.
Older versions are supported but may have visual or sync limitations.
Known Issues
- On macOS 12–14, Settings UI may not immediately reflect changes
- Toggle state may reset when window is backgrounded
- Some dynamic switches (e.g. image mode) require reopening the Settings
- Dynamic cover updates may momentarily show fallback images if
loonisn’t ready - App does not support Discord Web – native client only
Changes from 0.9.0
- Fixed: Custom Assets are no longer ignored – all custom fields now apply correctly
- New: Launch at Login toggle and auto-update check were added
- Cleaned: UI behavior now more consistent across macOS versions
- Changed: Bundle Identifier updated (see Notes)
Installation
- Download the
.dmgfrom the Releases page - Move
VibeBar.appinto yourApplicationsfolder - Launch and grant automation permissions when asked
Notes
- macOS 12.4 or later required
- Discord must be running natively (web version not supported)
- If you're upgrading from 0.9.0:
This means:
- Your previous settings may not carry over
- Permissions may be requested again on first launch
About Loon
This app can optionally use Loon, an external proxy tool developed by ungive.
Important Notice
Loonis not included in this repository and not distributed with this app.- Since the
loonrepository currently has no license, its code cannot be redistributed by third parties. - To stay compliant, this app only provides an optional install script.
- The script will download the
loonsource code directly from the original repository. - It will then compile and install
loonlocally on your machine. - At no point is
loonitself shipped or redistributed by this project.
- The script will download the
this is still a beta.