A macOS menu bar customization tool that runs shell scripts to display dynamic information and controls.
SwiftBar is a macOS application that lets users create and run custom menu bar plugins using shell scripts. It solves the problem of extending the macOS menu bar with dynamic information, quick controls, and personalized notifications by executing user‑written scripts and formatting their output into interactive menu items.
macOS users and developers who want to customize their menu bar with real‑time data, system monitors, or quick‑access tools without building a full native app.
Developers choose SwiftBar because it offers a lightweight, script‑driven approach to menu bar customization, supports a wide range of scripting languages, is compatible with existing BitBar plugins, and provides rich formatting and interaction options through a simple API.
Powerful macOS menu bar customization tool
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports any executable script (Bash, Python, Ruby) and allows custom refresh intervals via filename or metadata, as detailed in the Plugin Naming and Refresh Schedule sections.
Offers advanced formatting options like SF Symbols, markdown, images, and colors, enabling polished menu bar displays without native app development.
Inherits compatibility with the BitBar plugin repository and provides a built-in plugin browser, making it easy to find and use existing plugins.
Supports multiple use cases through Standard, Shortcuts, Ephemeral, and Streamable plugins, catering to everything from notifications to live data streams.
Creating plugins requires writing and debugging shell scripts, which can be a barrier for non-developers or those unfamiliar with command-line tools.
The application is built solely for macOS and cannot be used on other operating systems, limiting its utility in mixed-platform environments.
Refresh intervals are defined in seconds or minutes, making it unsuitable for applications requiring millisecond-level updates or continuous streaming without custom Streamable plugins.