Time Progress Bar in macOS menu bar
Native Swift menu bar timers with App Sandbox privacy and negligible battery footprint.
native macOS menu bar app for DI.FM internet radio
Native Swift DI.FM client at 35 MB beats 200+ MB Electron, but requires paid DI.FM membership.
macOS users streaming DI.FM, audio enthusiasts avoiding resource-heavy desktop apps
Spotify macOS client · Native Tidal app
The existing options for DI.FM on desktop are either the web player (yet another browser tab) or unofficial Electron wrappers that idle at 200+ MB of RAM to play an audio stream. This sits in the menu bar at ~35 MB RAM and 0% CPU. The .app is about 1 MB.
What it does: browse and search stations, play/pause, volume, see what's playing (artwork, artist, track, time), pick stream quality (320k MP3, 128k AAC, 64k AAC). Media keys work. It remembers your last station.
Built with AVPlayer for streaming, MenuBarExtra for the UI, MPRemoteCommandCenter for media key integration. The trickiest part was getting accurate elapsed time. DI.FM's API and the ICY stream metadata don't always agree, so there's a small state machine that reconciles the two sources.
macOS 14+ required. You need a DI.FM premium account for the high-quality streams.
Source and binary: https://github.com/drmikexo2/DIBar-macOS
Native Swift menu bar timers with App Sandbox privacy and negligible battery footprint.
Offline typo fixer beats cloud-dependent alternatives; but scope limited to <1KB, single-keypress UX.
GUI wrapper around Apple's Vision Framework, but it's free and open source.
It bundles yt-dlp into a genuinely Mac-first experience — native SwiftUI UI, a Menu Bar–only mode to keep the Dock tidy, and browser extensions for one-click captures. Nothing magical under the hood (yt-dlp still does the heavy lifting), but the app smooths common pain points: easy installs via a DMG or Homebrew tap, presets and preferences, and a friendlier workflow for non-CLI users.
Local Moonshine transcription streams text to any app, no audio leaves your Mac.
Menu bar terminal when iTerm2 and Warp already have this.