Swiftpack.co - orchetect/MacControlCenterUI as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by orchetect.
orchetect/MacControlCenterUI 2.0.1
SwiftUI menu builder DSL & controls that mimic macOS Control Center.
⭐️ 12
🕓 2 weeks ago
.package(url: "https://github.com/orchetect/MacControlCenterUI.git", from: "2.0.1")

Mac Control Center UI

Platforms - macOS 11+ Swift 5.3-5.8 Xcode 13-14 License: MIT


A menu builder and suite of SwiftUI controls that closely mimic the feel of macOS Control Center menus.

Integrates seamlessly with Swift's new MenuBarExtra.

Both Dark and Light Mode are fully supported.

Getting Started

Swift Package Manager (SPM)

  1. Add MacControlCenterUI as a dependency using Swift Package Manager.

    • In an app project or framework, in Xcode:

      Select the menu: File → Swift Packages → Add Package Dependency...

      Enter this URL: https://github.com/orchetect/MacControlCenterUI

    • In a Swift Package, add it to the Package.swift dependencies:

      .package(url: "https://github.com/orchetect/MacControlCenterUI", from: "2.0.0")
  2. Import the library:

    import MacControlCenterUI
  3. Try the Demo example project to see all of the available controls in action.


Minimum requirements to compile: Xcode 13 on macOS 11 Big Sur or newer.

Supports macOS 11.0+ once compiled.

Known Issues

Due to the lacklustre implementation of Apple's MenuBarExtra, it is currently not possible to get smooth window resize animations without a tremendous amount of work. For that reason, most MacControlCenterUI controls whose Control Center counterparts use animation will instead use safer static view size changes.


Coded by a bunch of 🐹 hamsters in a trenchcoat that calls itself @orchetect.


Licensed under the MIT license. See LICENSE for details.


If you enjoy using MacControlCenterUI and want to contribute to open-source financially, GitHub sponsorship is much appreciated. Feedback and code contributions are also welcome.


Contributions are welcome. Posting in Discussions first prior to new submitting PRs for features or modifications is encouraged.


Stars: 12
Last commit: 2 weeks ago
jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.

Release Notes

2 weeks ago
  • HighlightingMenuStateItem: Added init for isHighlighted binding
  • MenuDisclosureGroup: Added toggleVisibility parameter
  • MenuDisclosureGroup is now more performant
  • General cleanup

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics