๐งโ๐ป BrewUI
September 17, 2026 ยท View on GitHub
Homebrew's official macOS GUI: making package management approachable for users who prefer graphical interfaces over Terminal, while maintaining complete transparency about underlying Homebrew operations.
๐ก Motivation
Enable CLI-averse users to safely discover, install, update and manage Homebrew packages through a native SwiftUI interface that never hides what Homebrew is doing.
๐ฒ Tech
- Swift with strict concurrency ยท SwiftUI ยท Swift Package Manager
- Toolchain and macOS requirements: Package.swift, .swift-version and Xcode project
- Data from the
brewCLI and the Homebrew JSON API
๐ฆ Installation
brew install --cask homebrew-app
Homebrew configuration
Put Homebrew options in brew.env and relaunch BrewUI after changing them. Shell aliases and
exported variables do not configure the app. See Homebrew configuration.
๐ ๏ธ Development
After cloning:
./scripts/bootstrap
This installs Mint from Brewfile, runs mint bootstrap to build the SwiftFormat and SwiftLint versions pinned in Mintfile, enables repository git hooks and resolves Swift package dependencies for Homebrew.xcodeproj.
After bootstrap, commits automatically run checks on staged Swift files:
mint run swiftformatmint run swiftlint(with--fix, then strict validation)
The hook also runs BrewUILint over the production tree. If unresolved lint violations remain, the commit is blocked and the hook prints the failures so you can fix and re-commit.
See development setup for signing configuration, conventions and testing for contributor guidance and architecture for system design.
๐ง Status
Stable and under active development.
๐ Licence
AGPL-3.0. If you reuse or adapt the source the AGPL terms apply, including the network-use clause.