README.md
Fader
Volume control for macOS that lives in the menu bar: switch the output device with one click and set a separate volume for every app.
Fader is free and open source. It sends nothing anywhere — no telemetry, no analytics, no network access at all. Audio is processed on your Mac through the system's own Core Audio process taps (macOS 14.4+), so there is no kernel extension and no virtual audio driver to install.
Features
- One-click switching between output devices — headphones, speakers, AirPlay — with the active one marked.
- Per-app volume sliders and mute. An app at 100% is untouched: Fader only taps an app's audio after you adjust it, the default audio path stays bit-perfect.
- System output volume and mute, in sync with the volume keys and Control Center.
- Volumes persist per app across launches and reboots.
Install
Download the latest dmg (signed and notarized), or build from source; a Homebrew cask is planned once releases stabilise.
| 1 | git clone https://github.com/pantafive/fader.git |
| 2 | cd fader |
| 3 | brew install xcodegen |
| 4 | make run |
Requires macOS 15+ and Xcode 16+.
Permissions
Adjusting an app's volume uses a Core Audio process tap, which macOS gates behind the System Audio Recording permission. Fader asks for it the first time you move a per-app slider. The tapped audio is re-rendered to your output device with the gain you set and never leaves the audio pipeline. Device switching and system volume need no permissions.
Development
make drives local work: gen (generate the Xcode project), build, test, lint, format, run. The project file is generated by XcodeGen from project.yml and is not committed. See CONTRIBUTING.md before opening a pull request.
CI lints and tests every push. Pushing a v* tag builds, signs, notarizes, and publishes the dmg as a GitHub release; the landing page redeploys on every push to main that touches site/.