finds.dev← search

// the find

swiftbar/SwiftBar

★ 4,139 · Swift · MIT · updated May 2026

Powerful macOS menu bar customization tool

SwiftBar is a macOS menu bar plugin runner that lets you write any executable script and have its output appear as a menu bar item. It's a spiritual successor/compatible alternative to BitBar/xbar, aimed at developers who want to put custom system info, workflows, or tooling one click away in the menu bar.

- BitBar/xbar plugin compatibility means you inherit a large existing ecosystem of plugins without any changes needed.

- Plugin API is genuinely well-thought-out: cron schedules in metadata, streamable plugins via a simple `~~~` separator, ephemeral plugins via URL scheme, and environment variables like OS_APPEARANCE and SWIFTBAR_PLUGIN_REFRESH_REASON give scripts real context to work with.

- Multiple plugin types (standard, streamable, ephemeral, Shortcuts) cover the realistic range of use cases without overcomplicating the common case of 'run script, show output'.

- SF Symbols support, light/dark color variants, ANSI codes, Base64 images, and markdown in titles means you can make something that actually looks polished without writing any AppKit code.

- Test coverage is essentially nonexistent — SwiftBarTests.swift is a near-empty file. For something that runs arbitrary scripts and manages system-level processes, this is a real gap.

- Some preferences are only exposed via `defaults write` CLI commands rather than the UI, which is a rough edge for non-developer users and makes configuration non-obvious to discover.

- Plugin ordering resets when you rename a file (because position is keyed to filename), which is an annoying footgun when iterating on plugin development.

- The `GITHUB_ISSUES_ANALYSIS.md` and `SWIFTBAR_CODE_REVIEW_REPORT.md` files committed to the repo suggest AI-generated analysis artifacts were accidentally checked in, which signals some messiness in repo hygiene.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →